C#:调整图片大小时缩放图形的问题

时间:2019-07-31 10:33:02

标签: c# .net winforms

我有一个程序,可以让您在图像上画线,最终将用于计算距离

为简单起见,我当前的图像(在PictureBox中)是标尺的图像。当您单击鼠标左键时,将创建并绘制路径。

最初,要进行放大,我可以使用新尺寸的图像创建一个新的位图,并且能够使用Graphics.ScaleTransform,并且效果很好,但只会裁剪图像。

我需要图像实际改变宽度和高度,所以现在我要做的只是在放大/缩小时在宽度和高度上添加/减去恒定的缩放量。

使用这种方法,我似乎无法缩放图形,并且在放大图像时,路径会偏向不同的方向,而不是正确的大小。 我完全理解为什么会这样,因为图像越来越大且图形保持不变,我只需要进行数学运算即可缩放图形。

我尝试使用Graphics.ScaleTransform并将图形x和y移动到它们的当前位置+当前缩放量(偏移)

1 个答案:

答案 0 :(得分:0)

按照@TaW的指示,我更改了缩放功能,以根据所应用的任何缩放来计算新的宽度和高度,然后创建一个新的位图,其中包含具有新宽度和高度的原始图像。

相关问题