0

我尝试在热敏打印上打印图像:

   void Method()
   {
        var printDocument = new PrintDocument();
        printDocument.PrinterSettings = new PrinterSettings() { PrinterName = "zebra" };
        printDocument.PrintPage += new PrintPageEventHandler(printDocument_PrintPage);
        printDocument.Print();
    }

    void printDocument_PrintPage(object sender, PrintPageEventArgs e)
    {
        e.Graphics.DrawImage(System.Drawing.Image.FromFile(Server.MapPath("~/Images/orderedList6.png")), 0, 0);
    }

但是没有打印文档。在打印队列中也可见文档,我可以打印到 .xps 文件。

4

2 回答 2

0
  • 创建 Flowdocument 并将您的图像放入 flowdocument 的“BlockUIContainer”中
  • 通过遍历 PrintServer 找到 PrintQue
  • 使用以下代码打印
IDocumentPaginatorSource flowDocument = You_Flowdocument;
var writer = PrintQueue.CreateXpsDocumentWriter(Your_printQueue);
DocumentPaginator documentPaginator = flowDocument.DocumentPaginator;
writer.Write(documentPaginator);

您可以使用UserPrintTicket.PageMediaSizeDesity通过热敏打印机 dll 设置标签尺寸。

于 2014-05-26T07:41:50.880 回答
0

问题是你没有设置控制器

printDocument.PrintController = new StandardPrintController();
于 2014-01-17T12:29:17.263 回答