我正在尝试编写一个可缩放的UserControl而且我已经 目前跟随鲍勃鲍威尔的例子 然而,在http://www.bobpowell.net/zoompicbox.htm,我正在努力 实现是缩放到控件的中心点而不是 左上角。 有没有人有这方面的经验/想法?感谢。
答案 0 :(得分:1)
您需要通过中心偏移控件的值,应用缩放变换然后向后偏移。
尝试使用以下算法计算新的左上角:
(-old_centre * factor) + old_centre
如果控件为100,100,则缩放系数为2将产生:
((-50, -50) * 2) + (50, 50) = (-100, -100) + (50, 50) = (-50, -50)
缩放系数为0.5:
((-50, -50) * 0.5) + (50, 50) = (-25, -25) + (50, 50) = (25, 25)