【问题标题】:ghostscript: convert PDF into CMYK preserving pure Black for textghostscript:将 PDF 转换为 CMYK,为文本保留纯黑色
【发布时间】:2016-06-06 09:36:12
【问题描述】:

我需要将 RGB PDF 转换为 CMYK PDF。

我需要纯黑色的文本。

似乎(感谢下面的 cmets)术语“黑点补偿”是错误的。我从 Adob​​e Acrobat 中获取它,它完全按照我的需要工作。我认为 gs 具有相同的功能。

我使用 ghostscript 9.16

如果我做对了,有-dBlackPtComp 选项,但它对我不起作用。 我试过的 Ghostscript 命令是:

"c:/Program Files/gs/gs9.16/bin/GSWIN64C.EXE" -o testing_black_cmyk.pdf -sColorConversionStrategy=CMYK -sDEVICE=pdfwrite -dOverrideICC=true -sOutputICCProfile=c:/Windows/System32/spool/drivers/color/JapanColor2002Newspaper.icc -dTextBlackPt=1 -dBlackPtComp=1 test2.pdf

【问题讨论】:

  • 您没有设置 -sTextICCProfile 因此 -dTextBlackPt 有点无效。你能举一个输出看起来不正确的例子吗?还要检查这个答案*.com/a/3423503/1328439
  • 好的,我刚刚尝试使用-sTextICCProfile,但它似乎根本没有效果。输出结果我只是用 Acrobat 检查,而不是 100% 的黑色我看到 88%(而不是 0% 的其他颜色我看到 72% 67% 67%)
  • 1. BPC 与您的问题无关。 2. 我认为 GS 高级设备(pdfwrite,也是)仍然执行自己的“硬编码”颜色管理,即忽略大多数与 CMS 相关的开关。例如。任何-sOutputICCProfile 都会给出相同的结果——即,如果您希望您的JapanColor2002Newspaper.icc 被应用(用于照片等)——请注意,事实并非如此。 3. 解决方法是使用-sSourceObjectICC 与控制文件和device-link profiles。为自己制作几个 DL 配置文件,...
  • ...简单(使用-G 开关)用于图像(照片),一个用于文本和图形(使用-f 开关)。然后您的 RGB 黑色文本将转换为 CMYK 0/0/0/100,而您的颜色确实会转换为 JapanColor2002Newspaper.icc(假设这是您需要的)
  • 非常感谢您的帮助!不幸的是,我尝试了您的建议,结果相同,我已经更新了问题,请检查

标签: pdf ghostscript cmyk


【解决方案1】:

试试这个:

collink -v -G AppleRGB.icc JapanColor2002Newspaper.icc apple_to_jNP_photo.icc

collink -v -f AppleRGB.icc JapanColor2002Newspaper.icc apple_to_jNP_neutrals.icc

control.txt:

Image_RGB   apple_to_jNP_photo.icc       0   1   0
Graphic_RGB apple_to_jNP_neutrals.icc    0   1   0
Text_RGB    apple_to_jNP_neutrals.icc    0   1   0

gswin32c -q -sDEVICE=pdfwrite -o out.pdf -sColorConversionStrategy=CMYK -sSourceObjectICC=control.txt in.pdf

然后源 PDF 中的 DeviceRGB 转换为 DeviceCMYK,RGB 0/0/0 变为(正如我现在检查的那样)DeviceGray 0,应该没问题(以及所有其他中性 RGB阴影也映射到真正的灰度)。

我们对不同对象使用不同的 DL 配置文件的原因是,虽然饱和颜色(远离中性色)将通过两个配置文件转换为相同的 CMYK,但您可能不希望颜色突然切换到 @ 987654331@ 在连续色调照片中,如果颜色恰好接近中性 - 在媒体上看起来会很糟糕。

如果您的“图像”是例如0/0/0 RGB 的光栅化图形(图表等),那么您也可以考虑将apple_to_jNP_neutrals.icc 用于这些图像。

如果您的页面混合了真实图像和光栅化图形(文本) - 运气不好,您将不得不妥协。

我们使用-G 而不是快速简单的Simple Mode 的原因是因为-f(用于第二个配置文件)意味着“使用反向外配置文件A2B 的色域映射模式”,我们希望 2 个配置文件产生尽可能接近的结果(用于饱和颜色)。

【讨论】:

  • 感谢您的“指导”回答!问题,如果我在 control.txt 中只保留“Text_RGB”规则,那么图像会发生什么?
  • 然后,我认为default_rgb.icc 将被隐式分配给DeviceRGB 源,然后将其转换为default_cmyk.icc,即Artifex Software sRGB ICC ProfileArtifex CMYK SWOP Profile 通过它们的描述标签.看来,这种转换是使用Colorimetric BPC RI 完成的。这不管其他 CL 开关,包括控制文件非 DLP 行。这就是为什么我说高级设备行为是“硬编码的”。顺便说一句,我认为应该从标题中删除任何 BPC,也许“为文本保留纯黑色”会更好。
  • 好的,谢谢。我将结果与 Acrobat 转换版本进行比较,似乎 gs 转换版本中的图像对比度较低。
  • 遗憾的是,这不适用于我的 gs9.27 x64、colllink v2.1.1、this 示例 pdf (details here)。如果我将命令简化为 gswin64c -sDEVICE=pdfwrite -o out.pdf -sColorConversionStrategy=CMYK -sDefaultRGBProfile=apple_to_jNP_neutrals.icc GS9_Color_Management.pdf,它会产生多个错误消息,但仍会创建一些输出文件。但是,里面的许多物品都不见了。知道这里有什么问题吗?
  • 这对我也有帮助,而且效果很好!只是对其他人的提醒:我专门安装了colllinksoftware 以通过顶部的命令行注释从原始 AppleRGB 和 JapanColor2002Newspaper icc-profiles 生成 icc-profiles apple_to_jNP_photo.iccapple_to_jNP_neutrals.icc。在生成新的 icc 配置文件并使用 control.txt 文件后,它完美无缺!
【解决方案2】:

来自Little CMS页面上关于黑点补偿的描述:

“黑点补偿 (BPC) 是一种用于解决颜色问题的技术 由最暗级别之间的差异引起的转换问题 在不同的媒体/设备上可实现的黑色。”

换句话说,BPC 与您的问题无关,如果您想要正确的答案,您应该从这个问题中删除它。

如果你想保留黑色(或一般的纯色/二次色),你基本上有两个选择:

1) 创建适当的 DeviceLink 配置文件以进行转换。此 devicelink 配置文件应采用您的输入 ICC 配置文件和您要转换到的目标,并应包含适当的例外规则,以根据需要保持黑色/灰色/二级/三级颜色。

2) 在进行常规 ICC 配置文件转换时,使用支持异常的颜色转换引擎。例如,Little CMS 有一个意图标志(“INTENT_PRESERVE_K_ONLY_RELATIVE_COLORIMETRIC”),可以设置它来指示引擎在转换过程中保留黑色。

【讨论】: