【发布时间】:2017-12-06 19:39:27
【问题描述】:
当我将图像标签打印到斑马打印机时,标签会正常打印,然后会送入一个额外的空白标签,这随后会导致每个打印标签的上边距不对齐。
我在网上查看了很多已经发布的问题(即printdocument adds blank page),但没有解决方案。
我已经成功地测试了直接从 Windows 照片查看器以及标签程序本身打印图像文件。该问题仅在使用 PrintDocument 运行程序时出现。以下是我的代码
var printDoc = new PrintDocument {PrinterSettings = {PrinterName = printerName}};
printDoc.PrintPage += (sender, args) =>
{
using(Image img = Image.FromFile(filePath))
{ //file is 900x300, DPI 300, and print page is 3x1 inches
args.Graphics.PageUnit = GraphicsUnit.Document;
args.Graphics.DrawImage(img, 0, 0, img.Width, img.Height);
args.HasMorePages = false;
}
};
printDoc.Print();
我尝试在绘制图像时将宽度和高度设置为更小的值,但它仍然会打印一个空白标签!任何帮助将不胜感激。
【问题讨论】:
-
确保您的打印机未配置为打印分隔页。发布的代码对我来说没有重复问题,如果你打印到 PrintPreviewDialog,你会得到额外的页面吗?
-
PaperSize 很重要,它应该与装入打印机的标签纸相匹配。为什么它在 PhotoViewer 中运行良好,但在似乎没有选择任何纸张尺寸的程序中运行良好,很难猜测。
-
@LarsTech,谢谢!我仔细检查了没有设置分隔页,甚至尝试删除设置以根据标签间隙读取媒体,但没有运气。我将尝试打印预览对话框,看看会发生什么
-
@HansPassant 我尝试设置 PaperSize 但也没有任何运气。感谢您的建议!
-
致电 Zebra 寻求支持,您正在使用他们的打印机驱动程序。
标签: c# .net printing zebra-printers printdocument