逻辑颜色,客串和色域匹配

【勇芳软件工作室】汉化HomePreviousNext

默认情况下,Windows禁用图像颜色匹配,以确保现有应用程序继续按原来的方式绘制彩色图像。您可以使用SetICMMode功能为设备上下文启用图像颜色匹配。您必须为要用于输出的每个设备上下文启用映像颜色匹配。

启用图像颜色匹配后,您可以创建一个【颜色空间】并将其选择到要使用的设备的设备上下文中。颜色空间定义了可用于绘制的一??组逻辑颜色。对于每个设备,系统或设备驱动程序将逻辑颜色转换为设备(或物理)颜色,以确保设备之间的一致性。

要使用颜色空间中的颜色,请指定【逻辑颜色值】.值的格式取决于颜色空间类型。在某些颜色空间中,这与以前的Windows文档中描述的RGB(红色,绿色和蓝色)颜色值相似,但逻辑颜色值的红色,绿色和蓝色组件是根据独立色彩测量而不是任意颜色定义的设备驱动程序强加的单位。在其他情况下,您可以使用实际包含CMYK(青色,品红色,黄色,黑色)值的颜色值。

并非所有设备都支持所有颜色。您可以通过查看它的【色域】来确定给定设备支持哪些颜色,它可以产生一组颜色。不同的设备具有不同的色域。例如,屏幕可以显示没有打印机可以产生的光盘;同样,页面上也有一些红色,从不出现在显示屏上。

图像颜色匹配的一个重要元素是【色域匹配】,它是在不同设备的色域中查找颜色匹配的过程。这可以从简单(例如截断到打印机色域的表面)到复杂的(例如,移动所有颜色以保持对比度)。匹配不仅仅是确保每个像素忠实地以给定颜色再现的过程。相反,图像颜色匹配在给定输出设备的能力内工作,以产生其中颜色彼此具有相同关系的图像,就像在其它设备上制作时一样。

您可以使用CheckColorsInGamut功能确定给定的颜色是否在设备的色域内。这对于确定屏幕是否比当前打印机具有更大的色域是有用的。在这种情况下,您可以通知用户哪些屏幕颜色不会打印。您可以使用ColorMatchToTarget功能在屏幕上预览打印作业的颜色。该函数首先使用给定设备上下文(例如打印机)的当前颜色空间和色域匹配方法来转换图像中的颜色。然后将转换的图像转换为在预览设备上显示。

图像颜色匹配适用于以颜色值给出颜色的任何绘图操作。它会影响您直接指定的颜色,例如使用SetPixel功能设置单个像素的颜色时,或间接地设置笔,画笔,字体和其他图形对象中的颜色时。图像颜色匹配不适用于与设备相关的位图,例如由CreateBitmapCreateCompatibleBitmap功能创建的位图。