【发布时间】:2019-10-15 21:03:34
【问题描述】:
我想以 c# 形式创建一个旋转轮子,但有些图片无缘无故地被拉伸了。
我尝试查看文件属性,因为有些图像被拉伸了,有些还不错,但我什么都没找到。
private void Form1_Paint(object sender, PaintEventArgs e)
{
angle = (int)(angle * szybkosc);
//
//kolo1
Bitmap bit_kolo1 = new Bitmap(kolo1.Width, kolo1.Height);
Graphics gkolo1 = Graphics.FromImage(bit_kolo1);
gkolo1.TranslateTransform(bit_kolo1.Width / 2, bit_kolo1.Height / 2);
gkolo1.RotateTransform(angle);
gkolo1.TranslateTransform(-bit_kolo1.Width / 2, -bit_kolo1.Height / 2);
gkolo1.InterpolationMode = InterpolationMode.HighQualityBicubic;
gkolo1.DrawImage(kolo1, 0,0);
编辑 1:我注意到这只发生在我之前使用 gimp 裁剪的图片上。还是不知道怎么解决
【问题讨论】:
-
你需要控制图片的dpi值!图形默认为 srceen dpi,但文件可以带有任何 dpi 值。 DrawImage 将在他们身上;如果你不想这样,你可以在绘图之前更改它们。见here
-
@TaW 似乎不起作用
-
不起作用 不是有用的评论。显示您尝试过的代码!各种文件的dpi值是多少?