Ghostscript 中的 CMYK 叠印和挖空

Posted

技术标签:

【中文标题】Ghostscript 中的 CMYK 叠印和挖空【英文标题】:CMYK Overprinting and Knockout in Ghostscript 【发布时间】:2015-05-28 23:11:10 【问题描述】:

我正在尝试了解当前版本的 Ghostscript 的功能(另请参阅我几天前询问的 this question)。所以,我从瑞士的标准组织 www.pdfx-ready.ch 下载了 PDF/X-4 标准的“测试表格”,并尝试渲染它......(如果有人想尝试这个,这里是直接下载链接:http://www.pdfx-ready.ch/files/PDFX-ready-OutputTest_PDFX4-CMYK_V301d.zip。您可以在此页面上找到更多信息(德语):http://www.pdfx-ready.ch/index.php?show=496)

无论如何:看到大部分测试字段在屏幕上正确呈现,我感到非常惊喜。我尝试过的大多数其他 PDF 查看器都惨遭失败。然后我注意到有几个测试用例产生了错误:

CMYK 叠印模式(第 1 页)不受字体和 矢量(它适用于图像、蒙版和阴影)。 剔除透明度组(第 2 页)的渲染未正确执行。 渲染与叠印(Spot to CMYK、CMYK over Spot、图像叠印等)有关的更多字段(第 4 页)失败。

所以,我开始尝试...首先我注意到我仍然安装了旧版本的 Ghostscript。所以,我编译了新的 9.16 版 并再次尝试。这一次,Knockout Transparency Group(见上文)被正确渲染。太好了!

然后我读到here,“叠印和专色的处理取决于输出设备的印刷色模型”。所以,我现在尝试了-sDEVICE=x11cmyk,而不是-sDEVICE=x11。令我惊讶的是,关于 CMYK 叠印模式的错误消失了。不幸的是,第 4 页上的错误仍然存​​在。

此外,我现在有两个新问题:首先,页面现在以错误的颜色呈现。事实上,测试页的白色背景现在显示为青色!此外,Ghostscript 现在似乎正在尝试在屏幕上模拟某种丑陋的半色调。我读到here again “由于输出设备颜色模型的差异导致的带有套印和专色的文件的外观差异 [...] 不是由于 Ghostscript 的实施限制或它的输出设备。” 所以,我假设我错过了一些东西。但它是什么?

总结:

有没有办法(可能是另一个设备、命令行参数或其他东西)告诉 Ghostscript 正确处理叠印?还是尚未实施? 什么原因导致白色背景呈现青色? 有没有办法将它正确打印到喷墨打印机上,就像它在屏幕上显示的那样? (lpr 似乎效果不佳。)

提前致谢。

更新

所以,我做了很多实验并阅读了一些讨论。另外,文档here,我觉得很有趣,正如它所说:

"Ghostscript 目前提供spot 的叠印模拟 渲染到分离设备时的着色剂psdcmyktiffsep。这些设备维护所有专色平面并合并 这些一起提供模拟预览将是什么 打印出来的。”

好的,这就是@KenS(见下文)在评论中提到的内容。但后来

"可以得到与其他套印的模拟预览 CMYK 设备通过指定-dSimulateOverprint = true/false 在此 在这种情况下,模拟套印是通过混合 CMYK 着色剂。” [p.9]

现在,我读到它说我可以使用 CMYK 设备(如 tiff32nc)获得专色叠印的模拟预览。我对么?因此,在阅读了更多here 之后(以防这与 CMYK 有任何关系,我对此表示怀疑),我终于尝试了以下方法:

gs -dBATCH -dNOPAUSE -dSAFER
   -dSimulateOverprint=true
   -sDefaultCMYKProfile=ISOcoated_v2_300_eci.icc
   -sOutputICCProfile=ISOcoated_v2_300_eci.icc
   -sDEVICE=tiff32nc
   -sOutputFile=out.tif
   in.pdf

我什至尝试了-dOverrideICC-dRenderIntent-sProofProfile 选项。似乎没有任何效果。我在这里有什么误解?真的没有办法渲染正确套印专色的非分离全色预览吗?

更新 2

所以,我终于尝试了tiffsep 设备(不是真的,我想要实现的,但作为一个测试用例很有趣)并检查了生成的五个文件。还有仍然有错误!如果你想检查,运行命令

gs -dBATCH -dNOPAUSE -dSAFER
   -sDEVICE=tiffsep
   -dFirstPage=4
   -dLastPage=4
   -sOutputFile=page4.tif
   PDFX-ready_Output-Test_301d_X4.pdf

在上述 PDF/X-4 文档上。然后检查,例如,左列第一行中的第三个测试字段(第 4 页)。

所以,我真的不知道该怎么做。这是否意味着 Ghostscript 根本无法处理专色的叠印 - 与文档所说的相反?那是一个错误吗?还是我的命令错了?我错过了什么吗?

【问题讨论】:

作为一个简短的说明,您提到的测试文件实际上是基于根特工作组的工作,该工作组是一个国际标准组织 PDF/X-Ready 的成员。你可以在这里找到英文版:gwg.org/download/test-suites/ghent-output-suite 谢谢,我找了英文版,但不知道GWG版本实际上是原版。 我咨询了我们的色彩专家,他告诉我 tiffsep 设备应该生成一个正确的 CMYK 合成预览。如果不是这种情况,那么您应该将其报告为错误。 感谢@KenS,感谢您的努力。事实上,使用上述命令(不确定命令行是否正确?)“Ghent Output Suite”的第 1、2 和 3 页可以完美呈现。但是,第 4 页有几个错误。我在这里上传了结果:kliq.at/page4(转换为 PNG 以供网络查看)。我应该提交错误报告吗?如果是这样,我在哪里可以这样做? 我看到了错误报告,我今天在开员工会议,所以我会指出相关工程师(它已经正确分配,但引起他的注意没有任何害处它) 【参考方案1】:

第一个答案是停止尝试使用 X11 设备,它是一种 RGB 设备,并且没有得到很好的支持。为了执行 X11CMYK,输入必须渲染为 CMYK,然后后过滤为 RGB。这不是一个好的解决方案。

仅针对 CMYK 印刷色(和专色)定义了叠印,任何其他颜色模型都不会执行叠印。所以我建议你使用它们的 CMYK 变体渲染到 TIFF 或 JPEG 设备。

专色更加复杂,如果设备不支持请求的专色,那么它会使用色调变换转换为定义的备用颜色空间。如果发生色调转换,则该点不会被套印。

由于显示设备不支持专色,因此您无法使用显示设备预览专色套印。如果你想这样做,你应该使用 tiffsep 设备。

如果您认为自己在 Ghostscript 中发现了错误,请照此报告,但您必须针对 CMYK 设备报告它,我现在要说的是,我们不会非常积极地处理X11 CMYK 设备,几乎没有使用。

打印到喷墨设备取决于打印工作流程,我不知道您使用的是什么。如果它的 CUPS(我只是根据您使用 X11 设备的事实来猜测)那么这“应该”就可以了。但这取决于完整的端到端打印过程,我不知道你在做什么。

再次注意,专色在 CMYK 打印机上不可用,因此套印专色可能不会按您预期的方式工作。

【讨论】:

感谢@KenS 提供的信息丰富的回复。我知道套印仅针对 CMYK(和现货)定义。这就是为什么我认为x11cmyk 设备(通过 CMYK 转换为 RGB)是个好主意。你是说我根本不应该使用 x11 吗?是否有在屏幕上显示 CMYK 的替代设备?这里可以使用-sProofProfile吗?另外,我理解你所说的专色。但是 Adob​​e Reader(即使在版本 7 中)是如何处理这个问题的呢? (顺便说一句:tiff32nc 设备运行良好,除了套印/污点问题。) 长话短说:在屏幕上使用 Ghostscript 正确渲染 cmyk、套印、挖空、透明度和专色的最简单方法是什么? (假设 Ghostscript 可以处理所有这些。) 我认为这样做的方法是在上面的答案中:将图像渲染为 CMYK TIFF 或 JPEG,并使用另一个程序来查看这些图像。 感谢@jsbueno,您的帮助。不幸的是,这似乎不起作用:正如我所说,tiff32nc 设备也无法处理专色。我假设 Ghostscript 是一个如此成熟的软件包,必须有一种方法可以在屏幕上以某种方式预览打印后的专色(有或没有套印)会是什么样子。 (哦,不必创建中间图像文件会很棒。但这是一厢情愿的想法。) tiffsep,如果您想要专色,则不是 tiff32nc。不,显示器没有“Ghostscript 中的校对模式”。【参考方案2】:

我可能迟到了,但这对我有用:

gs -dBATCH -dNOPAUSE -dSimulateOverprint=true \
   -sDEVICE=jpegcmyk -sOUTPUTFILE=overprint.jpg overprint.pdf

【讨论】:

感谢发帖。迟到总比不到好。诚然,我已经有一段时间没有研究这个问题了,但是你的回答让我很好奇,如果问题已经在一个较新的版本中得到解决。会回来汇报的。再次感谢,非常感谢。 :)

以上是关于Ghostscript 中的 CMYK 叠印和挖空的主要内容,如果未能解决你的问题,请参考以下文章

Ghostscript - 错误的 CMYK 颜色转换 - 100% 黄色转换为 98% 黄色?

Ghostscript:将 PDF 转换为 CMYK EPS

Ghostscript 将 cmyk-PDF 转换为 rgb-PNG 并保留正确的颜色

Ghostscript 如何处理没有颜色的矢量对象

使用 Ghostscript 更改 PDF 不透明度

iOS 引导页挖空透明