在 ps2pdf ghostscript 中嵌入 icc 颜色配置文件
Posted
技术标签:
【中文标题】在 ps2pdf ghostscript 中嵌入 icc 颜色配置文件【英文标题】:embed icc color profile in ps2pdf ghostscript 【发布时间】:2016-02-14 08:11:54 【问题描述】:您好,我在 windows 10 上使用 ghostscript 9.18 尝试以下操作:
CALL "C:\Program Files\gs\gs9.18\bin\gswin64c.exe" ^
-dNumRenderingThreads=8 ^
-dSAFER ^
-r720 ^
-dCompressFonts=true ^
-dPDFSETTINGS=/prepress ^
-dPDFA=2 ^
-dBATCH ^
-dNOPAUSE ^
-sProcessColorModel=/DeviceRGB ^
-dProcessColorModel=/DeviceRGB ^
-sColorConversionStrategy=/UseDeviceIndependentColor ^
-sDefaultGrayProfile="C:\Program Files\gs\gs9.18\iccprofiles\ISOcoated_v2_grey1c_bas.ICC" ^
-sDefaultRGBProfile="C:\Program Files\gs\gs9.18\iccprofiles\sRGB_v4_ICC_preference.icc" ^
-sDefaultCMYKProfile="C:\Program Files\gs\gs9.18\iccprofiles\PSOuncoated_v3_FOGRA52.icc" ^
-dOverrideICC=true ^
-sOutputICCProfile="C:\Program Files\gs\gs9.18\iccprofiles\sRGB_v4_ICC_preference.icc" ^
-sDEVICE=pdfwrite -sOutputFile="%~n1.pdf" %1
pause
但它失败了,它没有错误地写入,但无论输入什么,都不会包含 ecc 配置文件。请问有人可以帮忙吗?我找到了其他主题,但没有真正的答案...
【问题讨论】:
Embed ICC color profile in PDF的可能重复 【参考方案1】:我昨天在 irc.freenode.net 的 #ghostscript 频道上回答了这个问题。命令行有很多问题:
-dNumRenderingThreads 对任何高级设备都没有影响,因为它们不渲染
您不应在高级设备上设置分辨率,除非您预计会有渲染输出(PDF 透明输入到 PDF
一般来说,我不会使用 PDFSETTINGS,尤其是在尝试创建 PDF/A 文件时。如果您错误地命令命令,结果将不是有效的 PDF/A 文件。
您设置了两次ProcessColorModel,一次是名称和字符串语法开关,字符串开关不正确。
您已使用字符串开关 (-s) 设置 ColorConversionStrategy,但提供了名称。那是行不通的,也没有效果。
您绝对不想设置 OverrideICC 或 OutputICCProfile,除非您在严格控制的色彩管理工作流程中工作(我知道您不是),否则您不应该设置默认 ICC 配置文件。
所有这一切都是为了让其他应该遇到这个问题的人受益。不要不要复制上面的命令行,认为它有用,它不是。
正如 IRC 上的发帖人已经解释的那样,他的输出文件确实包含 ICC 配置文件。由于他似乎不懂色彩管理或 PDF,因此他无法解释他想要什么(或为什么),只能说他想要包含一个 ICC 配置文件“以获得专业结果”。
【讨论】:
以上是关于在 ps2pdf ghostscript 中嵌入 icc 颜色配置文件的主要内容,如果未能解决你的问题,请参考以下文章
Ghostscript ps2pdf 输出大小 555 点 x 555 点
python ghostscript:RuntimeError:找不到Ghostscript库(libgs)
如何使用 Ghostscript 在 Postscript 中导入 png 文件?
Ghostscript - EPS(带有透明背景的嵌入式 TIFF)到 PNG 转换
如何使用 Ghostscript 和 Ghostscript .NET 通过嵌入 IIC 配置文件生成正确的 PDF/A