如何防止 CUPS 自动旋转我的 PDF?

如何防止 CUPS 自动旋转我的 PDF?

在我的 Ubuntu 16.04 LTS 系统上,我有一台 Citizen CL-S621Z 标签打印机,带有 50x80mm 标签(纵向),以及我想要打印的 50x80mm PDF:

在此处输入图片描述

问题是,CUPS 将工作旋转了 270°,所以它出来的时候是横向的:

在此处输入图片描述

输入的 PDF 文件本身没有页面旋转,如下所示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

我的打印命令行是:

lpr label.pdf

我尝试了许多选项来阻止自动页面旋转,包括-o 'nopdfAutoRotate'-o portrait-o landscape-o orientation-requested=N值介于N0 和 7 之间),但这些选项似乎都没有任何效果。

该作业似乎先通过 CUPS 过滤器图,pdftopdf然后进入pdftops其中,据我所知,当作业到达后一个过滤器时会发生旋转,之后页面旋转设置为 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来自cups-filters-core-drivers版本1.8.3-2ubuntu3。奇怪的是,该问题并没有发生在cups-filters-core-drivers版本的 Raspbian 上1.0.61-5+deb8u3


更新:我能够通过仔细编辑 PPD 文件以完全匹配标签尺寸来获得所需的方向:

*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"

感谢 CUPS 团队的 Michael。

答案1

我们在使用 Zebra 的 PPD 文件的 Zebra Z4MPLUS 打印机时也遇到了同样的问题。PPD 文件中的标签尺寸为 8.00x4.00",但这对我们来说不起作用。使用自定义 4x8in 也不起作用。我们必须在 PPD 文件中创建一个 4.00x8.00" 的标签尺寸,然后在 Cups 中选择它。我们通过在 PPD 中编辑 4.00x13.00" 的标签尺寸来完成此操作,我们知道我们不需要这个尺寸。下面是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"

相关内容