我正在开发一个必须打印标签的应用程序。我正在使用的标签打印机是Brother QL-570。标签宽度为66mm,标签长度约为45mm。我遇到的问题是我无法配置应用程序来实际打印标签。每次我这样做,我都会收到一条警告,说明打印机的文档尺寸太大。无论我尝试将PrintDocument尺寸更改为什么尺寸,我都会收到警告,说明文件尺寸为90mm x 29mm,对于标签打印机来说太大了。
这只是我的一次尝试:
private PrintDocument label;
label = new PrintDocument();
PaperSize pS = new PaperSize("Custom Size", 212, 67);
label.DefaultPageSettings.PaperSize = pS;
label.PrinterSettings.PrinterName = "Brother QL-570";
label.PrinterSettings.DefaultPageSettings.PaperSize = pS;
label.PrintPage += new PrintPageEventHandler(label_PrintPage);
private void label_PrintPage(object sender, PrintPageEventArgs e)
{
SolidBrush brush = new SolidBrush(Color.Black);
Font header = new Font(FontFamily.GenericSansSerif, 12.0F, FontStyle.Bold);
e.Graphics.DrawString("Hello World", header, brush, 30, 30);
}
有谁知道我哪里出错了?我想我可能错误地设置了文档和打印机的纸张尺寸。我尝试了很多其他纸张尺寸但无济于事。
感谢您的帮助。
答案 0 :(得分:5)
问题不是编程问题,而是打印机配置问题。默认情况下,打印机配置为使用与我使用的纸张不同的纸张尺寸。谢谢你的帮助。
答案 1 :(得分:2)
感谢。您的评论帮助我解决了类似的问题。似乎这些Brother标签打印机明显忽略了PageSettings属性..一旦你有它工作,试着在那里放一些狂野的值。完全被忽视 - 疯了!设置一个足够大的打印区域,并确保您在正确的矩形内绘图,你会没事的。