小弟遇到这样一个问题还在苦逼思考,请求援助。我有一张720*576的图片,然后按比例缩放,但大小始终保持720*576,即放大的时候先选中中间区域然后放大到720*576,缩小的时候往中间缩小,周围填充大小还是720*576,请问代码怎么实现,或者查找那些资料。谢谢!我看过很多放大缩小的例子但是不知道怎么始终保持720*576的大小。明天要求实现,请帮忙。

解决方案 »

  1.   

    看过很多例子了对吧,我直接说核心。
    这个问题有2个难点。
    1.要求周围填充:这个效果就是其实画两次,第一次就是720*576大小的图片,底色为白色(或者你喜欢的),第二次就是用Stretchblt缩放后的图片画在720*576图片的中心。2.每次缩放画图位置改变。不能再以左上角控件为0,0坐标了,一定要以为控件中心GetClientRect获得整个画图背景Rect,求出中心点坐标,用SetViewportOrg设置为原点。之后你的StretchBlt里面的第一和第二个坐标参数就很容易确定了。我把核心问题说了,你自己尝试下吧。