ps2pdf 不遵守 Pagesize 指令

ps2pdf 不遵守 Pagesize 指令

Postscript 3.0 文件需要 A3 尺寸:

~/home_shared/project/auto/2020$ head -1 electr.ps
%!PS-Adobe-3.0

~/home_shared/project/auto/2020$ grep -i bound electr.ps
%%PageBoundingBox: 0 0 842 1191 % A3 papierformaat

生成的 PDF 仍然适合“信纸”纸张大小,而这是我在欧洲最不想要的。

~/home_shared/project/auto/2020$ ps2pdf -sPapersize=A3 electr.ps
~/home_shared/project/auto/2020$ pdfinfo electr.pdf
Producer:       GPL Ghostscript 9.26
CreationDate:   Tue Mar 31 11:57:12 2020 GMT
ModDate:        Tue Mar 31 11:57:12 2020 GMT
Tagged:         no
UserProperties: no
Suspects:       no
Form:           none
JavaScript:     no
Pages:          2
Encrypted:      no
Page size:      612 x 792 pts (letter)
Page rot:       0
File size:      2848 bytes
Optimized:      no
PDF version:    1.4

这是一个错误,还是我遗漏或误解了什么?这是在 Ubuntu 18.04 LTS 上,已严格修补到最新状态。

答案1

您突出显示的行是注释(PostScript 注释以“%”开头)。通常,符合要求的 PostScritp 解释器将完全忽略注释行。

因此,问题并不是 ps2pdf 未能“遵守 PageSize 指令”,而更可能是输入文件不包含改变媒体大小的 setpagedevice 请求。

在这种情况下,您将获得默认的媒体大小,对于 Ghostscript 来说,通常为 Letter 或 A4,具体取决于二进制文件的构建方式,以及是否存在一些额外的实用程序(例如 libpaper)(以及二进制文件是否构建为使用这些实用程序)。

相关内容