以像素为单位绘制图像的更简单的方法
本文关键字:更简单 方法 图像 绘制 像素 为单位 | 更新日期: 2023-09-27 18:04:18
我试图得到一些c#函数的处理。有没有更简单的方法来绘制图像到屏幕在Windows窗体使用像素作为测量?我只是想要那种准确性,因为我最终将运行World Level的数组,并根据数组在屏幕上放置草和墙等。
Image grass = Bitmap.FromFile("grass.png");
// Create parallelogram for drawing image.
Point ulCorner = new Point(0, 0);
Point urCorner = new Point(100, 0);
Point llCorner = new Point(0, 100);
Point[] destPara = { ulCorner, urCorner, llCorner };
// Create rectangle for source image.
Rectangle srcRect = new Rectangle(0, 0, 100, 100);
GraphicsUnit units = GraphicsUnit.Pixel;
// Draw image to screen.
GFX.DrawImage(grass, destPara, srcRect, units);
我知道我可以做以下事情:
GFX.DrawImage(grass, new point(50,50) );
但是问题是现在没有使用像素作为测量,所以我不能在屏幕上正确地定位它
调用DrawImage
,但指定您想要的宽度和高度,否则GDI+将考虑设备的DPI并对其进行缩放。
graphics.DrawImage(grass, top, left, grass.Width, grass.Height);
当心DrawImageUnscaled()
,与它所暗示的相反,它实际上会继续扩大。
图形。drawimagunscaledmethod (Image, Int32, Int32)与DrawImage (Image, Int32, Int32)没有什么不同 - Tell me more…