1

现在我正在实现一个基本的 PDF 查看器,我遇到了一个问题,即在设备和模拟器中渲染时,某些文件显示的文本和矢量图形颜色错误(太强烈、太亮)。

由于我可以访问校准硬件,因此我可以使用测试数据为设备创建 ICC 配置文件。

我现在唯一的问题是:有没有办法使用 ICC 配置文件来帮助在 iPad 屏幕上呈现 PDF 数据?

如果有人想知道:我计划在 iPad 上以及可能在 iPhone 上定位 iOS 4.x。

提前致谢!

4

2 回答 2

1

我通过使用 sRGB 生成所有 PDF(例如,您可以在 InDesign 导出设置中选择此选项)来解决这个问题(让 PDF 以与预先计算的预览位图不同的颜色呈现)。

于 2011-08-10T05:28:21.070 回答
0

目前,iOS 缺乏像 ColorSync 这样的全系统 CMS。

我会尝试做的是:

  1. 校准你的 iPad,
  2. 根据校准器提供的 ICC 配置文件计算颜色变换,
  3. 对您从 PDF 数据显示的颜色值运行该转换。

看看你会得到什么。您所针对的显示器可能存在很多差异(可能不同的制造商批次 == 白点略有不同,或其他东西),但这可能会缓解您的问题。

... 其中,由于与某些人不同,您没有将这个问题定义为“iOS 中的完美色彩再现”,因此,您的问题很可能是可以解决的。

Bruce Lindbloom 有很多颜色转换数学(常量、定义等),他的网站是一个很好的起点,对于这类事情。

http://www.brucelindbloom.com/

由于大多数 Cocoa 开发人员都可以依赖 ColorSync,因此我没有在 Obj-C 中遇到任何相关的颜色转换示例。我知道 Python 中有很多东西——python-colormath 就是一个很好的例子,它清晰地实现了 Lindbloom 先生的许多矩阵和转换:

http://code.google.com/p/python-colormath/

...您也可以将 OpenCV 嵌入到您的 iOS 项目中。如果您正在做这种事情,OpenCV 有本机矩阵数据结构和其他有用的东西:

http://www.cs.iit.edu/~agam/cs512/lect-notes/opencv-intro/

这是我感兴趣的一个领域,所以如果您希望我详细说明我提供的任何内容,请告诉我。祝你好运。

于 2011-08-08T21:03:05.377 回答