首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将PDF标签打印到斑马打印机(420 D)

将PDF标签打印到斑马打印机(420 D)
EN

Stack Overflow用户
提问于 2017-05-12 19:49:46
回答 2查看 5.8K关注 0票数 1

在我的网店,我可以下载一个送货单作为一个pdf文件。我已经构建了一个.NET服务,它使用FileSystemWatcher来监视我的“打印”文件夹。该服务将处理文件夹中的所有.pdf.zpl文件。

所有.zpl文件都将被打开并写入Zebra420d打印机,直接使用使用RawPrinterHelper类的RawPrinterHelper驱动程序。它像预期的那样工作!

我的问题是.pdf文件。当我从Windows 10的浏览器手动将文件打印到Zebra420d打印机时,它工作得非常好。但是当我尝试从我的服务中打印它们时,标签的大小将非常小。看起来内容已经缩小了。

代码语言:javascript
复制
public static bool PrintPdf(string filepath, string printerName)
{
    try
    {
        var doc = new PdfDocument();
        doc.LoadFromFile(filepath);
        doc.PrinterName = printerName;
        doc.PrintDocument.Print();
        doc.Dispose();

        return true;
    }
    catch (Exception ex)
    {
        // More code ...
    }
}

我已经搜索了一整晚,尝试了各种方法将PDF转换成PNG/SVG到ZPL,但没有起作用。

如何使用c#将PDF格式的标签打印到Zebra420d打印机?

编辑:我还试着把PDF转换成BMP,然后转换成GRF (斑马母语)。还是不起作用。我得到的只是一页空白。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-05-14 01:14:07

我解决了!

我根本不需要任何皈依。我只需重新安装和调整打印机驱动程序设置,并修改代码以处理新设置。

这是我的最后代码:

代码语言:javascript
复制
 public static bool Print(string filepath, string printerName)
    {
        try
        {
            var doc = new PdfDocument();
            doc.LoadFromFile(filepath);
            doc.PrinterName = printerName;

            var psize = new PaperSize("Custom Paper Size", 417, 1007);
            doc.PrintDocument.DefaultPageSettings.PaperSize = psize;
            doc.PageSettings.Rotate = PdfPageRotateAngle.RotateAngle180;

            doc.PrintDocument.Print();
            doc.Dispose();

            return true;
        }
        catch (Exception ex)
        {
            // More code ...
        }
    }
票数 0
EN

Stack Overflow用户

发布于 2018-10-22 15:06:28

从nuget包下载器下载Spire.Pdf包以访问PdfDocument类

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43945475

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档