使用 ghostscript 从 PDF 或 PS 生成“颜色正确”栅格的最佳方法
Posted
技术标签:
【中文标题】使用 ghostscript 从 PDF 或 PS 生成“颜色正确”栅格的最佳方法【英文标题】:Best way to produce 'colour correct' raster from a PDF or PS with ghostscript 【发布时间】:2011-11-20 20:51:46 【问题描述】:使用 ghostscript 生成颜色正确的光栅文件的最佳方法是什么?
ColorConversionStrategy、UseCIEColour 和 ICC 配置文件交互的各种方式并不那么明显,而且它很容易产生在颜色方面相差甚远的图像。
到目前为止,以下命令是我管理过的最好的命令,但与在 Acrobat Pro 中预览相比,它仍然会为我们的测试文件产生略微不同的色调,我想知道是否有人有更“科学”的答案。 干杯!
./software/ghostscript-9.04/bin/gs -sOutputICCProfile=./profiles/sRGB.icc -dQUIET -dSAFER -dBATCH -dNOPAUSE -dNOPROMPT -r94 -dUseCropBox -dEPSCrop -dMaxBitmap=50000000 -dTextAlphaBits=4 -dGraphicsAlphaBits=4 -dAlignToPixels=0 -dGridFitTT=0 -dPrinted=false -dLastPage=1 -sDEVICE=jpeg -sOutputFile=/dev/stdout imm.pdf > imm.jpg
【问题讨论】:
【参考方案1】:您在 Acrobat 中使用什么模拟配置文件作为比较?
如果您希望看到相同的结果,则必须在 Acrobat 和 Ghostscript 中使用相同的配置文件,即使这样也可能存在细微的差异,因为两者使用不同的颜色引擎。不过,这些可能不会在屏幕上以视觉方式检测到。
你提到的方法根本没有真正的交互作用。
ColorConversionStrategy 仅与 pdfwrite 设备相关,在生成 PDF 文件时,因此与渲染完全无关。它不会以任何有意义的方式与其他人“互动”。
UseCIEColor 是一种用于颜色管理的旧且使用不当的 PostScript 范例,它依赖于您提供描述设备颜色属性的颜色渲染字典 (CRD)。如果你使用默认值,那么你会得到一些可以接受的东西,但它不会是“正确的”。 CRD 有点类似于 ICC 配置文件,但它们并不完全相同。
ICC 配置文件是要走的路。
如果您使用 ICC 配置文件,请不要设置 UseCIEColor。事实上,如果您希望获得好的颜色,请不要设置 UseCIEColor除非您确切知道自己在用它做什么。
【讨论】:
感谢您的回复,这是有用的信息。那么在 gs 中为 OutputICCProfile 使用相同的配置文件和 Acrobat 的模拟配置文件应该会产生“最佳匹配”结果? 应该是这样。当然,CMS 引擎不会完全相同,但如果差异显而易见,我会感到惊讶。以上是关于使用 ghostscript 从 PDF 或 PS 生成“颜色正确”栅格的最佳方法的主要内容,如果未能解决你的问题,请参考以下文章
从PS中创建PDF时,用Ghostscript去除白色背景。
通过 Ghostscript 将 PS 文件转换为 PDF/A,色彩空间问题
Ghostscript错误使用pdfwrite将多页PS转换为多页PDF