我不得不处理从 PDF 源中提取的 CMYK JPEG。PDF 是用 Photoshop 创建的。
问题是 Photoshop 使用“正常”值将 JPEG CMYK 数据存储在 PDF/EPS 中,而在独立 JPEG 中它存储反转值。因此,当 DCTDecode 流按字节提取并写入磁盘时,生成的 JPEG 文件会出现反转。
(实际的提取是由一个内部实用程序完成的,它只是从 DCTDecode 流中提取字节并将它们未经修改地写入以.jpg
它基本上是二进制复制和粘贴结尾的文件。PDF 可用于重新过程,如果需要的话。)
由于图像必须保持其 JFIF 格式,有没有办法在提取的文件中放置一个标记,.jpg
以使 Photoshop 以正确的编码打开它?该过程必须是无损的(不涉及进一步的熵编码)。
JPEG 已经包含APP14
标记,删除它没有任何效果。
以下是来自libjpeg
文档的引用:
“... Adobe Photoshop 似乎在 CMYK JPEG 文件中写入反转数据:0 表示 100% 墨水覆盖率,而不是您期望的 0% 墨水。... Photoshop 3.0 [和更高版本]...编写未反转的 YCCK在 EPS/JPEG 文件中...(但在裸 JPEG 文件中使用的数据极性不会改变...)"