C++ VS2013 如何在MFC中插入一张png图片

C++ VS2013 如何在MFC中插入一张png图片,第1张

你可以使用MFC的CImage类,该类的头文件是atlimageh

下面是示例代码:

CDC pDC = GetDC();
CImage Image;
ImageLoad(strPath);
if (ImageIsNull())
{
    MessageBox(_T("没加载成功"));
    return -1;
}
if (ImageGetBPP() == 32) //确认该图像包含Alpha通道
{
    int i;
    int j;
    for (i = 0; i < ImageGetWidth(); i++)
    {
        for (j = 0; j < ImageGetHeight(); j++)
        {
            byte pByte = (byte )ImageGetPixelAddress(i, j);
            pByte[0] = pByte[0]  pByte[3] / 255;
            pByte[1] = pByte[1]  pByte[3] / 255;
            pByte[2] = pByte[2]  pByte[3] / 255;
        }
    }
}
ImageDraw(pDC->m_hDC, 0, 0);
ImageDestroy();
ReleaseDC(pDC);

注意使用CImage,对于带alpha通道数据的要特别处理一下,上面的示例中,双循环体就是做的这个事情,你可以参考。

VS2013不需要配置什么环境,DX库已集成到VS中。 包含头文件#include 在项目中任意一个。cpp文件添加 #pragma comment( lib, “d3d9lib” ) 场袱冠禾攉鼓圭态氦卡编写D3D9代码。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/13409123.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-07-30
下一篇 2023-07-30

发表评论

登录后才能评论

评论列表(0条)

保存