【发布时间】:2019-04-26 14:41:12
【问题描述】:
我正在使用 Ghostscript 使用以下命令将 pdf1.3 转换为 pdf/a-1b:
gs -dPDFA -dBATCH -dNOPAUSE -dNOOUTERSAVE -sColorConversionStrategy=sRGB -sDEVICE=pdfwrite -sOutputFile=output.pdf PDFA_def.ps input.pdf
自定义 PDFA_def.ps 以使用 srgb icc 配置文件。除了变化是GS 9.26自带的标准def文件。
现在是棘手的部分: 1-在 ubuntu 18.10、GS 9.26 上本地运行此转换它工作正常,我得到一个有效的 pdf/a 2- 在 docker 容器(ubuntu 18.10。GS 9.26)中运行相同的命令也会创建一个 pdf/a,这被认为是有效的
但是,在第一种情况下,我可以使用 mustang (https://github.com/ZUGFeRD/mustangproject) 处理文件以创建有效的电子发票。在第二种情况(docker 容器)中,这失败了,因为野马认为该文件不是有效的 pdf。
检查两个 pdf 文件,我原以为它们是相同的,因为我在上面运行相同的转换。然而他们不是。在 dockerfile 中创建的 PDF 小 10 个字节,并在文件本身中显示一些不同的元信息。
我怀疑肯定有一些“隐藏的依赖”使 GS 在我的主机系统上的行为与 docker 容器相比有所不同,但感觉完全错误,我已经没有办法进一步调试了。
有谁知道,GS 是否有更多的依赖可能导致相同的命令产生不同的结果?
【问题讨论】:
标签: docker ghostscript