xianxianagain
2014-12-18 08:06
采纳率: 100%
浏览 2.3k
已采纳

MFC使用 CImage贴图失真

MFC使用 CImage来贴图在控件上,但是有的时候会失真,有什么解决办法吗

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • lx624909677 2014-12-18 08:10
    已采纳

    这样试试
    CWnd* pWnd;
    pWnd=GetDlgItem(IDC_IMAGE1);
    CDC* pDC=pWnd->GetDC();
    HDC hDC = pDC->m_hDC;

    CRect rect_frame;
    CImage image;
    pWnd->GetClientRect(&rect_frame);
    image.Load(fileName);

    ::SetStretchBltMode(hDC,HALFTONE);
    ::SetBrushOrgEx(hDC,0,0,NULL);

    image.Draw(hDC,rect_frame);
    ReleaseDC(pDC);//释放picture控件的DC

    点赞 5 打赏 评论
  • blownewbee 2014-12-18 08:58

    失真只要分为两方面,一个是色彩失真,一个是尺寸失真。不知道你说的是什么

    如果是色彩失真,检查下图片的格式以及你使用的调色板是否有问题。

    如果是尺寸失真,检查下图片的长宽像素,按照一定的比例去绘制。

    点赞 打赏 评论

相关推荐 更多相似问题