我在网上看,但我没有找到答案。我需要知道drawEllipse工作的单位是什么:像素,厘米......
我还需要知道是否有一种简单的方法来改变这些单位(我需要它在厘米上)。
非常感谢!
答案 0 :(得分:1)
嗯,你看起来不太仔细。
DrawEllipse
是System.Drawing.Graphics
类的一种方法。 Graphics
实现了PageUnit
属性:
获取或设置此图形中用于页面坐标的度量单位。
可能的值由GraphicsUnit
枚举给出。
答案 1 :(得分:1)
默认值以Pixel为单位。您可以使用PageUnit属性将此信息打印到Form
上进行检查:
protected override void OnPaint(PaintEventArgs e)
{
e.Graphics.DrawString(e.Graphics.PageUnit.ToString(), new Font("Arial", 14), Brushes.Black, 50, 50);
}
此属性也可用于设置所需的测量单位,如下所示:
protected override void OnPaint(PaintEventArgs e)
{
e.Graphics.PageUnit = GraphicsUnit.Millimeter;
e.Graphics.DrawEllipse(new Pen(Color.Black), 100, 100, 25, 30);
}
现在你应该有一个宽度为2.5厘米,高度为3.0厘米的黑色椭圆,坐标为10厘米,X尺寸为10厘米