zoukankan      html  css  js  c++  java
  • VC2005中将Picture控件显示图片保存为BMP,JPG等格式

    1.在stdafx.h头文件中加入

      #include <atlimage.h>

    2.保存图片

      方法一:  

    复制代码
      HBITMAP hBitmap = NULL;
    //创建位图段
    BITMAPINFO bmi;
    LPBYTE pBits;
    ZeroMemory(&bmi,sizeof(bmi));
    //m_bmpShow为Picture Control控件变量名称
    CDC *pShowDC = m_bmpShow.GetDC();

    //获取Picture Control控件的宽度和高度
    //CRect m_rcShow
    m_bmpShow.GetWindowRect(&m_rcShow);

    bmi.bmiHeader.biSize = sizeof(BITMAPINFOHEADER);
    bmi.bmiHeader.biWidth = m_rcShow.Width();
    bmi.bmiHeader.biHeight = m_rcShow.Height();
    bmi.bmiHeader.biPlanes = 1;
    bmi.bmiHeader.biBitCount = 24;
    bmi.bmiHeader.biCompression = BI_RGB;
    hBitmap = CreateDIBSection(pShowDC->m_hDC,&bmi,DIB_RGB_COLORS,(void **)&pBits,0,0);
    //创建兼容dc并选择位图段
    CDC dcMem;
    dcMem.CreateCompatibleDC(pShowDC);
    dcMem.SelectObject(hBitmap);
    dcMem.BitBlt(0,0,m_rcShow.Width(),m_rcShow.Height(),pShowDC,0,0,SRCCOPY);
    m_bmpShow.ReleaseDC(pShowDC);
    if( hBitmap )
    {
    CImage img;
    img.Attach(hBitmap);
    img.Save(_T("f:\1.bmp"));
       img.Save(_T("f:\1.jpg"));
      //其它文件格式同理
    DeleteObject(hBitmap);
    AfxMessageBox(_T("OK!!"));
    }
    复制代码

          方法二:

    复制代码
    //m_bmpShow为Picture Control控件变量名称
    CDC *pdc = m_bmpShow.GetDC();
    CImage imag;
    //获取Picture Control控件的宽度和高度
    CRect rcClient;
    m_bmpShow.GetWindowRect(&rcClient);
    imag.Create(rcClient.Width(),rcClient.Height(),32);

    ::BitBlt(imag.GetDC(),0,0,rcClient.Width(),rcClient.Height(),pdc->m_hDC,0,0,SRCCOPY);

    imag.Save(_T("f:\2.bmp"));
    imag.Save(_T("f:\21.jpg"));
    ReleaseDC(pdc);
    imag.ReleaseDC();
    AfxMessageBox(_T("OK!"));
    复制代码

    参考:http://blog.sina.com.cn/s/blog_56e19aa70100c59k.html

       http://blog.sina.com.cn/s/blog_56e19aa70100c5a0.html

  • 相关阅读:
    jquery 年月日分离
    Jquery实现常用的分类搜索跳转
    SQL Server 利用触发器对多表视图进行更新
    TEA XTEA XXTEA 学习笔记
    IDApro自带动调初探
    HECTFreverse部分writeup
    NCTF2021逆向WP(部分)
    buuctf[刮开有奖]writeup
    base64学习笔记
    深夜写文——致19岁的自己
  • 原文地址:https://www.cnblogs.com/xumaojun/p/8544135.html
Copyright © 2011-2022 走看看