天天看點

Color Convert 技術總結

I. Channel:

1. Device to Device (Without Default) :

   Direct Convert

   eg. RGB to Gray

   eg. RGB to CMYK (use UCR and BG which be specified in GState).

   eg. Gray to RGB

   eg. Gray to CMYK

   eg. CMYK to Gray

   eg. CMYK to RGB

2. Device to Device (With Default) :

   Convert to CIE use tint transfrom than convert to Device.

   eg. RGB to DefaultRGB

3. CIEABC to Device ***: Build Tabled Convert.

   Convert ABC to XYZ use specified CIEColorSpace.

   Convert XYZ to Device use specified CIEColorRender (Need ABC's Whitepoint,

   Blackpoint and RenderIntent).

   eg. CalRGB --> XYZ --> Device

   Implements Note: Use these two converter build a new tabled convert, and

   directly convert ABC to Device by that.

4. DeviceN to Device :

   If two colorspace is compatible than simple copy, else convert N to

   Alternate ColorSpace and convert it to Device.

5. Separation to Device :

   if two colorspace is compatible than simple copy, else convert N to

   Alternate ColorSpace and convert it to Device.

6. Indexed to Device :

   Convert Indexed to Base ColorSpace use lookup table. Than Convert Base

   ColorSpace to Device.

7. Transform:

   All Device ColorSpace need to pass a Transform (Specified by TR,HT in

   GState), or a optional Halftones.

II. Overprint:

1. Overprint change colorant in process color space.

2. If overprint is false (default value), on the painted area colorant that no

   specified by the source color space is earsed. which earsed means fill zero.

3. If overprint mode is 1, and source color space is DeviceCMYK, and not draw a

   image or shading, and device color space is DeviceCMYK, remove the source

   colorant which value is zero.

4. Overprint just worked in:

    Source ColorSpace is DeviceN or Separation, And Process ColorSpace is CMYK or CMYKSeparation.

    Source ColorSpace is CMYK, And Process ColorSpace is CMYKSeparation

5. BlackOverprint just worked in:

    Process ColorSpace is CMYK.

III. Note:

1. Only CIE to Device (Channel 3) need build Tabled Convert.

2. Process Color Space:

   On composite device process color space is the device colorspace. eg. RGB

   On seperation deivce process color space is the the selected (or called

   current) colorant. eg. M in CMYK.

3. OverprintMode(OPM) is just used in DeviceCMYK to DeviceCMYK, when paint

   graphics.

IV. Render Interface Parameters.

1. Device ColorSpace:

        TYPE_DEVICE_RGB,

        TYPE_DEVICE_GRAY,

        TYPE_DEVICE_CMYK,

        TYPE_DEVICE_CMYK_SEPERATION,

2. Device Colorant:        

        (Red, Green, Blue) for TYPE_DEVICE_RGB,

        (Gray) for TYPE_DEVICE_GRAY,

        (Cyan, Megenta, Yellow, Black) for TYPE_DEVICE_CMYK,

        Any Colorants for TYPE_DEVICE_CMYK_SEPERATION,

        eg. (Cyan, Megenta, Orange).

3. Select Colorant: (or called current colorant)

        When device colorspace is TYPE_DEVICE_CMYK_SEPEARION, this value

        specify which colorant is the process colorant.

4. CIEColorRender:

        How To convert CIEXYZ to Device.

5. Black Overprint and Black Overprint Limit:

        When black overprint open, set any colorant expect Black to zero, when

        Black colorant value larger then black overprint limit.

V. ColorManager Parameters.

1. Device Colorant Transform (TR,HT):

        Dynamicly Setted.

2. CIEColorRender:

        Get from Render Interface.

3. UCR, BG:

        Dynamicly Setted.

繼續閱讀