0

我正在使用 Ghostscript.NET 打印一些 pdf,这是我的配置。

List<string> switches = new List<string>
{
    "-empty",
    "-dPrinted",
    "-dFirstPage=1",
    "-dLastPage=1",
    "-dPrinted",
    "-dBATCH",
    "-dNOPAUSE",
    "-dNOSAFER",
    "-dNumCopies=1",
    "-sDEVICE=mswinpr2",
    @"-sFONTPATH=" + System.Environment.GetFolderPath(System.Environment.SpecialFolder.Fonts),
    "-sOutputFile=%printer%" + printQueue.FullName,
    "-f",
    inputFile
};

它工作得很好,但我的纸张尺寸是 6.5 英寸 x 8.5 英寸的自定义纸张,我的问题是当我在理光打印机上静默打印时,尝试用字母打印。

如何在开关中设置纸张尺寸或强制打印机正确渲染。

如果我手动打印必须手动选择纸张和垃圾箱,所有打印都完美无缺。

4

2 回答 2

1

mswinpr2 设备使用 Windows 进行打印,特别是介质大小由打印机画布设置。

因此,答案是在开始打印之前将打印机的默认介质选择设置为所需的介质尺寸。

于 2017-10-13T07:16:16.580 回答
1

您可以设置纸张尺寸,"-sPAPERSIZE=a4"您可以看到Ghostscript 已知的纸张尺寸。或者您可以通过高度和宽度设置它, "-dDEVICEWIDTHPOINTS=w" "-dDEVICEHEIGHTPOINTS=h" 其中 w 是所需的纸张宽度,h 是所需的纸张高度,以磅为单位(单位为 1/72 英寸)。

于 2018-01-29T21:42:16.980 回答