在包含单个CView的MFC SDI应用程序中,我将输出设备上下文pDC->m_hDC传递给映射库,以在CMyView::OnDraw()方法中呈现地图。
我希望渲染的图像出现在cview的中心,周围是黑色背景,即图像大小将小于CView客户端矩形大小。我已经尝试过CDC::SetViewportOrg()并在映射库中设置了设备大小,但是不幸的是映射库绘制的设备大小超出了设置的范围。
将图像限制为所需大小的最佳方法是什么?我应该考虑裁剪函数吗?或者我必须手动绘制图像中不需要的部分。
发布于 2010-05-11 21:26:47
嗯,你可以用两种方法来做。
1)你可以SetBoundsRect到你想要的边界。
2)你可以只将你想要的图像部分放入DC中。
方法2将是我首选的方法,因为没有额外的逻辑。它甚至只会尝试绘制你正在涂鸦的部分:)
https://stackoverflow.com/questions/2809807
复制相似问题