我是这段代码来打印几块文本:
var doc=new PrintDocument();
doc.PrintPage += (sender, e) => {
e.Graphics.DrawString(
"123456789 123456789 123456789 123456789 123456789 123456789 123456789 ",
new Font("Courier New", 12),
Brushes.Black, 0, 0);
};
doc.Print();
Courier New 应该是 10 CharsPerInch,所以每个块(包括空格)应该是 2.54 厘米长。打印时 - 无论使用哪台打印机,我测量 13.1 厘米 5 块而不是 12.7 厘米。当我绘制 1 英寸宽的矩形时,我可以看到文本实际上比应有的长,所以这不是一般的缩放问题,只是文本打印错误。
谁能证实这一点,更重要的是给我指路?我需要文本恰好是 10 CPI,而不是经验丰富的 10.3 CPI :-(