Eu tenho um script que cria um PDF e o envia para o servidor de impressão remoto executando o CUPS.
Usando Net::Printer
, eu configurei a impressora:
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();
A impressora remota é uma impressora de etiquetas, Zebra ZT420 , configurada com Zebra PPD .
Agora, o problema é que a etiqueta impressa é forçada de alguma forma, em algum lugar no caminho, para a orientação vertical, em vez da horizontal, não importa como eu configure o arquivo PDF (seja forçá-lo a ser vertical ou horizontal).
Ao imprimir manualmente, por exemplo, usando o Visualizador de Documentos no GNOME ou a caixa de diálogo de impressão do sistema, a saída é impressa corretamente.
Por que isso acontece com meu código?
O que eu perdi ou configurei incorretamente?
Existe uma maneira de forçar a orientação ao enviá-lo para uma impressora?
A menos que a configuração possa ser alterada em outro lugar, posso tentar alterar a linha 28 do arquivo Zebra PPD de
*LandscapeOrientation: Plus90
para*LandscapeOrientation: Plus0
.