我有一个创建 PDF 并将其发送到运行 CUPS 的远程打印服务器的脚本。
使用Net::Printer
,我设置了打印机:
my $print_server = "remote_print.server";
my $printer = "lp1234";
my $lineprinter = new Net::Printer(
filename => $pdf,
printer => $printer,
server => $print_server,
port => 515
);
[...]
# Print and get printer stauts.
$result = $lineprinter->printfile();
远程打印机是标签打印机Zebra ZT420,配置了Zebra PPD。
现在,问题在于,无论我如何设置 PDF 文件(无论是强制它是垂直还是水平),打印的标签都会以某种方式在途中某处被强制为垂直方向,而不是水平方向。
手动打印时,例如使用 GNOME 上的 Document Viewer 或系统打印对话框,可以正确打印输出。
为什么我的代码会发生这种情况?
我错过了什么或配置错误?
将其发送到打印机时有没有办法强制定向?
除非可以在其他地方更改设置,否则我可能会尝试将 Zebra PPD 文件的第 28 行从
*LandscapeOrientation: Plus90
更改为*LandscapeOrientation: Plus0
.