我期望下面的代码绘制一个3英寸宽乘1英寸的矩形。相反,印刷页面上的实际矩形高4英寸乘2英寸高。
我尝试绘制的每个矩形总是比我预期的。
我在做什么错?
printpageeventargs.graphics中的哪些加法属性我应该设置以在打印页面上正确尺寸的矩形?
void printDocument_PrintPage(object sender, PrintPageEventArgs e)
{
e.Graphics.PageUnit = GraphicsUnit.Inch;
e.Graphics.DrawRectangle(Pens.LightGray, 1, 1, 3, 1);
}
下面的代码修复了此问题。我怀疑默认笔宽度为1,被解释为1英寸。这使矩形更大。指定笔宽度为0修复。
void printDocument_PrintPage(object sender, PrintPageEventArgs e)
{
e.Graphics.PageUnit = GraphicsUnit.Inch;
Pen pen = new Pen(Color.LightGray, 0);
e.Graphics.DrawRectangle(pen, 1, 1, 3, 1);
}