Como evito que o CUPS gire automaticamente meu PDF?

5

No meu sistema Ubuntu 16.04 LTS, eu tenho uma impressora de etiquetas Citizen CL-S621Z, com etiquetas de 50x80mm (retrato) e um PDF de 50x80mm que desejo imprimir:

O problema é que o CUPS gira o trabalho em 270 °, de modo que ele saia lateralmente:

O arquivo PDF de entrada não tem rotação de página, como revelado por pdfinfo :

admin@bukittinggi ~> pdfinfo label.pdf
Creator:        cairo 1.13.1 (http://cairographics.org)
Producer:       cairo 1.13.1 (http://cairographics.org)
Tagged:         no
UserProperties: no
Suspects:       no
Form:           none
JavaScript:     no
Pages:          1
Encrypted:      no
Page size:      141.732 x 226.772 pts
Page rot:       0
File size:      32443 bytes
Optimized:      no
PDF version:    1.5

Minha linha de comando de impressão é:

lpr label.pdf

Eu tentei várias opções para impedir a rotação automática de páginas, incluindo -o 'nopdfAutoRotate' , -o portrait , -o landscape e -o orientation-requested=N (para valores de N entre 0 e 7) e nenhuma delas parece ter algum efeito.

O trabalho parece passar por pdftopdf e, em seguida, pdftops no gráfico do filtro CUPS e, até onde eu sei, a rotação ocorre quando o trabalho atinge o último filtro, após o qual a rotação da página é definida como 270 °:

~> /usr/sbin/cupsfilter -P test.ppd -m application/vnd.cups-postscript label.pdf  > filtered.ps
~> ps2pdf filtered.ps
~> pdfinfo filtered.pdf
[...]
Page size:      142 x 227 pts
Page rot:       270

/usr/lib/cups/filter/pdftops é de cups-filters-core-drivers versão 1.8.3-2ubuntu3 . Estranhamente, o problema não ocorre no Raspbian, que possui cups-filters-core-drivers version 1.0.61-5+deb8u3 .

Atualização: consegui obter a orientação desejada editando cuidadosamente o arquivo PPD para corresponder exatamente às dimensões do marcador:

*DefaultPageSize: w142h227
*PageSize w142h227/1.97x3.15": "<</PageSize[142 227]/ImagingBBox null>>setpagedevice"
*PageRegion w142h227/1.97x3.15": "<</PageSize[142 227]/ImagingBBox null>>setpagedevice"
*ImageableArea w142h227/1.97x3.15": "0 0 142 227"
*PaperDimension w142h227/1.97x3.15": "142 227"

Obrigado ao Michael da equipe CUPS.

    
por crishoj 09.07.2016 / 17:47

1 resposta

6

Tivemos o mesmo problema com uma impressora Zebra Z4MPLUS usando o arquivo PPD da Zebra. O arquivo PPD tinha 8.00x4.00 "como um tamanho de etiqueta, mas isso não funcionou para nós. Usar o Custom 4x8in também não funcionou. Tínhamos que criar um tamanho de etiqueta de 4.00x8.00" no arquivo PPD e, em seguida, selecioná-lo em Copos Fizemos isso editando um tamanho de rótulo de 4.00x13.00 "no PPD que sabíamos que não precisávamos. Aqui está um diff original.ppd edited.ppd

40c40
< *DefaultPageSize: Custom.4x8in
---
> *DefaultPageSize: w288h576
80c80
< *PageSize w288h936/4.00x13.00": "<</PageSize[288 936]/ImagingBBox null>>setpagedevice"
---
> *PageSize w288h576/4.00x8.00": "<</PageSize[288 576]/ImagingBBox null>>setpagedevice"
98c98
< *DefaultPageRegion: Custom.4x8in
---
> *DefaultPageRegion: w288h576
138c138
< *PageRegion w288h936/4.00x13.00": "<</PageSize[288 936]/ImagingBBox null>>setpagedevice"
---
> *PageRegion w288h576/4.00x8.00": "<</PageSize[288 576]/ImagingBBox null>>setpagedevice"
154c154
< *DefaultImageableArea: Custom.4x8in
---
> *DefaultImageableArea: w288h576
194c194
< *ImageableArea w288h936/4.00x13.00": "0.00 0.00 288.00 936.00"
---
> *ImageableArea w288h576/4.00x8.00": "0.00 0.00 288.00 576.00"
209c209
< *DefaultPaperDimension: Custom.4x8in
---
> *DefaultPaperDimension: w288h576
249c249
< *PaperDimension w288h936/4.00x13.00": "288.00 936.00"
---
> *PaperDimension w288h576/4.00x8.00": "288.00 576.00"
    
por timcu 29.03.2017 / 07:24