识别PDF文件中的RGB和CMYK

本文关键字:RGB CMYK PDF 文件 识别 | 更新日期: 2023-09-27 18:00:51

我知道以前有人问过这个问题,但它没有太多解释,而且我没有资格在那里发表评论,所以我问这个问题。

在前面提到的线程中提供的答案检索了r g和b值,但我不知道如果找到的值显示什么部分是CMYK,告诉什么(因为我知道渲染后所有值都转换为RGB(。

我需要首先确定pdf文件中使用的是什么颜色系统,我现在明白了CMYK和RGB可以在一个文件中同时使用。因此,我需要分析我的C#应用程序中的pdf文件,并找到一种将CMYK部分转换为RGB的方法(如果需要的话(。

我了解到可以使用pdf进行转换。

识别PDF文件中的RGB和CMYK

这是一个非常宽泛的问题,如果你至少阅读PDF规范的一部分,对你来说会更好。让你尝尝我为什么这么说。。。

PDF和颜色空间

1( PDF可以包含多种颜色空间
-设备颜色空间,如RGB、CMYK和Gray
-抽象颜色空间,如Lab
-基于ICC配置文件的颜色空间,如基于ICC的RGB、基于ICC的Lab
-命名或特殊颜色空间,如Separation、Device-N和N-通道
(我省略了一些迷人的图案和阴影(

2( 上述所有颜色空间都可以在单个PDF文件中使用。当您的PDF文件符合某些ISO标准(如PDF/A、PDF/X…(时,它必须遵守限制颜色空间数量的规则,但通常情况下,单个PDF中允许使用所有颜色空间。

3( PDF文件的使用位置决定了需要如何处理这些颜色空间。如果你想用CMYK墨水在台式打印机上打印,需要将所有这些颜色空间转换为CMYK。如果你在屏幕上查看PDF文件,就会有东西将所有这些颜色空间转换为RGB。

转换颜色

是的,你可以从CMYK(以及我提到的所有其他颜色空间(转换为RGB。但如果你想正确地做,这听起来可能会困难得多。举个例子,看看这个网站:http://www.rapidtables.com/convert/color/cmyk-to-rgb.htm

它包含用于此转换的快速且易于使用的公式:
R=255×(1-C(×(1-K(
G=255×(1-M(×(1-K(
B=255×(1-Y(×(1-K(

这将起作用,但在实践中,您需要一个使用ICC配置文件(用于表征颜色空间(进行正确转换的引擎(例如LittleCMS(。