3

我有一个似乎附有一些内部颜色配置文件的 PDF。如果我在 iPhone 模拟器中渲染它,颜色会在 Photoshop 中显示出来,这显然可以解析这个颜色配置文件。如果我在 Mac 上渲染相同的 PDF,我会得到与 Preview 和 Pixelmator 中相同的颜色(不那么明亮、浑浊)。

有什么方法可以在 Mac 上实现与在 iPhone 模拟器中获得的相同(正确)渲染结果?

在 iOS 模拟器上,我使用 CGColorSpaceCreateDeviceRGB 和 kCGImageAlphaPremultipliedFirst 位图上下文。我还设置了渲染意图 kCGRenderingIntentPerceptual,虽然我不知道这是否有什么不同。

在 Mac 上,我尝试了相同的设置,以及所有不同种类的色彩空间,但在模拟器中我永远无法获得相同的结果。

我还尝试了这里提到的两种基于 ICC 的方法:http: //developer.apple.com/library/mac/#qa/qa1396/_index.html

我越来越绝望了。获得正确颜色的iOS模拟器和Mac有什么不同?我以为 iOS 不做色彩校正,但 Mac 做?现在我正在用 PDFKit 绘制各个页面。Mac 上的 PDFKit 与 iOS 上的颜色校正是否存在差异,使其在 iOS 模拟器上正常工作,但在 Mac 上失败?

我还在 iOS Simulator 中从这个 PDF 中提取了一个 JPG,将其放入 Preview 中的新 PDF 中,并且我的 Mac 渲染产生了与输入完全相同的颜色。

在我看来,iOS 模拟器有一种神奇的能力,可以使用嵌入在这个 PDF 中的颜色配置文件,而 Mac 上的 Preview 或 Quartz 则没有。

请帮忙!

亲切的问候奥利弗·德罗布尼克

4

2 回答 2

0

我不确切知道模拟器是如何工作的,但我可以向您保证,预览版和 iOS 对 PDF 文件的某些功能的处理非常不正确;尤其是在色彩管理、透明度、叠印、图像的高级压缩等方面......

两个提示:

在 Mac 上,在 Adob​​e Reader 中打开 PDF 文件(从 Adob​​e.com 免费下载)。您在 Reader 中看到的颜色应该非常接近实际情况。如果您的 PDF 文件包含 ICC 配置文件(对于文件中的对象或输出意图中的对象,意味着整个文件),它将被正确使用。在 iOS 上,还可以查看 Adob​​e Reader——它是目前该平台上最好(最高质量)的显示工具。

其次,如果您想知道模拟器或其他工具能做什么或不能做什么,请查看来自 GWG (http://gwg.org/ghentoutputsuite.phtml) 的测试补丁。这些补丁旨在提供非常容易解释某些工具或打印机是否可以处理特定 PDF 功能的结果。

这两个步骤至少应该告诉你什么是有效的以及它在哪里有效。这应该更容易弄清楚你需要纠正什么。

于 2012-11-23T22:39:54.380 回答
0

不幸的是,这是 Mac 上 CGPDF 中已确认的错误。如果您将 CMYK 作为透明色彩空间,它就会显现出来。iOS 正确地忽略了这一点,Mac 弄乱了颜色。

于 2012-12-31T09:44:29.373 回答