106
PDF 32000-1:2008
146
©
Adobe Systems Incorporated 2008 – All rights reserved
In other words, the A component shall be first decoded by the gamma function, and the result shall be
multiplied by the components of the white point to obtain the L, M, and N components of the intermediate
representation. Since there is no second stage, the L, M, and N components shall also be the X, Y, and Z
components of the final representation.
EXAMPLE 1
The examples in this sub-clause illustrate interesting and useful special cases of CalGray spaces. This
example establishes a space consisting of the Y dimension of the CIE 1931 XYZ space with the CCIR XA/
11–recommended D65 white point.
[ /CalGray
<< /WhitePoint [ 0.9505 1.0000 1.0890 ] >>
]
EXAMPLE 2
This example establishes a calibrated gray space with the CCIR XA/11–recommended D65 white point
and opto-electronic transfer function.
[ /CalGray
<< /WhitePoint [ 0.9505 1.0000 1.0890 ]
/Gamma 2.222
>>
]
8.6.5.3
CalRGB Colour Spaces
A CalRGB colour space is a CIE-based ABC colour space with only one transformation stage instead of two. In
this type of space, A, B, and C represent calibrated red, green, and blue colour values. These three colour
components shall be in the range 0.0 to 1.0; component values falling outside that range shall be adjusted to
the nearest valid value without error indication. The decoding functions (denoted by “Decode ABC” in Figure
22) are gamma functions whose coefficients shall be specified by the Gamma entry in the colour space
dictionary (see Table 64). The transformation matrix denoted by “Matrix ABC” in Figure 22 shall be defined by
the dictionary’s Matrix entry. Since there is no second transformation stage, “Decode LMN ” and “Matrix LMN ”
shall be implicitly taken to be identity transformations.
The WhitePoint and BlackPoint entries in the colour space dictionary shall control the overall effect of the
CIE-based gamut mapping function described in sub-clause 10.2, "CIE-Based Colour to Device Colour".
Typically, the colours specified by WhitePoint and BlackPoint shall be mapped to the nearly lightest and
nearly darkest achromatic colours that the output device is capable of rendering in a way that preserves colour
appearance and visual contrast.
Table 64 – Entries in a CalRGB Colour Space Dictionary
Key
Type
Value
WhitePoint array
(Required) An array of three numbers [ X
W
Y
W
Z
W
] specifying the tristimulus
value, in the CIE 1931 XYZ space, of the diffuse white point; see below for
further discussion. The numbers X
W
and Z
W
shall be positive, and Y
W
shall be
equal to 1.0.
BlackPoint
array
(Optional) An array of three numbers [ X
B
Y
B
Z
B
] specifying the tristimulus
value, in the CIE 1931 XYZ space, of the diffuse black point; see below for
further discussion. All three of these numbers shall be non-negative. Default
value: [ 0.0 0.0 0.0 ].
Gamma
array
(Optional) An array of three numbers [ G
R
G
G
G
B
] specifying the gamma for
the red, green, and blue (A , B, and C) components of the colour space.
Default value: [ 1.0 1.0 1.0 ].
Matrix
array
(Optional) An array of nine numbers [ X
A
Y
A
Z
A
X
B
Y
B
Z
B
X
C
Y
C
Z
C
]
specifying the linear interpretation of the decoded A, B, and C components of
the colour space with respect to the final XYZ representation. Default value:
the identity matrix [ 1 0 0 0 1 0 0 0 1 ].
296
©
Adobe Systems Incorporated 2008 – All rights reserved
147
PDF 32000-1:2008
WhitePoint represents the diffuse achromatic highlight, not a specular highlight. Specular highlights,
achromatic or otherwise, are often reproduced lighter than the diffuse highlight. BlackPoint represents the
diffuse achromatic shadow; its value is limited by the dynamic range of the input device. In images produced by
a photographic system, the values of WhitePoint and BlackPoint vary with exposure, system response, and
artistic intent; hence, their values are image-dependent.
The transformation defined by the Gamma and Matrix entries in the CalRGB colour space dictionary shall be
The A, B, and C components shall first be decoded individually by the gamma functions. The results shall be
treated as a three-element vector and multiplied by Matrix (a 3-by-3 matrix) to obtain the L, M, and N
components of the intermediate representation. Since there is no second stage, these shall also be the X, Y,
and Z components of the final representation.
EXAMPLE
The following shows an example of a CalRGB colour space for the CCIR XA/11–recommended D65
white point with 1.8 gammas and Sony Trinitron phosphor chromaticities.
[ /CalRGB
<< /WhitePoint [ 0.9505 1.0000 1.0890 ]
/Gamma [ 1.8000 1.8000 1.8 000]
/Matrix [ 0.4497 0.2446 0.0252
0.3163 0.6720 0.1412
0.1845 0.0833 0.9227
]
>>
]
The parameters of a CalRGB colour space may be specified in terms of the CIE 1931 chromaticity coordinates
(x
R
, y
R
), (x
G
, y
G
), (x
B
, y
B
) of the red, green, and blue phosphors, respectively, and the chromaticity (x
W
, y
W
)
of the diffuse white point corresponding to a linear RGB value (R, G, B), where R, G, and B should all equal 1.0.
The standard CIE notation uses lowercase letters to specify chromaticity coordinates and uppercase letters to
specify tristimulus values. Given this information, Matrix and WhitePoint shall be calculated as follows:
X
L
X
A
A
G
R
×
X
B
B
G
G
×
X
C
C
G
×
+
+
=
=
Y
M
Y
A
A
G
R
×
Y
B
B
G
G
×
Y
C
C
G
×
+
+
=
=
Z
N
Z
A
A
G
R
×
Z
B
B
G
G
×
Z
C
C
G
B
×
+
+
=
=
z
y
W
x
G
x
B
–
(
)
y
R
×
x
R
x
B
–
(
)
y
G
×
–
x
R
x
G
–
(
)
y
B
×
+
×(
=
Y
A
y
R
R
------
x
G
x
B
–
(
)
y
W
×
x
W
x
B
–
(
)
y
G
×
x
W
x
G
–
(
)
y
×
+
–
z
----------------------------------------------------------------------------------------------------------------------------------
×
=
X
A
Y
A
x
R
y
R
------
×
=
Z
A
Y
A
1 x
R
–
y
R
--------------- 1
–
⎝
⎠
⎜
⎟
⎛
⎞
×
=
Y
B
y
G
G
------
–
x
R
x
B
( –
)
y
W
×
x
W
x
B
–
(
)
y
R
×
x
W
x
R
–
(
)
y
×
+
–
z
---------------------------------------------------------------------------------------------------------------------------------
×
=
X
B
Y
B
x
G
y
G
------
×
=
Z
B
Y
B
1 x
G
–
y
G
--------------- 1
–
⎝
⎠
⎜
⎟
⎛
⎞
×
=
205
PDF 32000-1:2008
148
©
Adobe Systems Incorporated 2008 – All rights reserved
8.6.5.4
Lab Colour Spaces
A Lab colour space is a CIE-based ABC colour space with two transformation stages (see Figure 22). In this
type of space, A, B, and C represent the L*, a*, and b* components of a CIE 1976 L*a*b* space. The range of
the first (L *) component shall be 0 to 100; the ranges of the second and third (a * and b*) components shall be
defined by the Range entry in the colour space dictionary (see Table 65).
Figure L.3 in Annex L illustrates the coordinates of a typical Lab colour space; Figure L.4 in Annex L compares
the gamuts (ranges of representable colours) for L*a*b*, RGB, and CMYK spaces.
A Lab colour space shall not specify explicit decoding functions or matrix coefficients for either stage of the
transformation from L*a*b* space to XYZ space (denoted by “Decode ABC,” “Matrix ABC ,” “Decode LMN,” and
“Matrix LMN ” in Figure 22). Instead, these parameters shall have constant implicit values. The first
transformation stage shall be defined by the equations
Table 65 – Entries in a Lab Colour Space Dictionary
Key
Type
Value
WhitePoint array
(Required) An array of three numbers [ X
W
Y
W
Z
W
] that shall specify the
tristimulus value, in the CIE 1931 XYZ space, of the diffuse white point; see
8.6.5.3, "CalRGB Colour Spaces" for further discussion. The numbers X
W
and
Z
W
shall be positive, and Y
W
shall be 1.0.
BlackPoint
array
(Optional) An array of three numbers [ X
B
Y
B
Z
B
] that shall specify the
tristimulus value, in the CIE 1931 XYZ space, of the diffuse black point; see
8.6.5.3, "CalRGB Colour Spaces" for further discussion. All three of these
numbers shall be non-negative. Default value: [ 0.0 0.0 0.0 ].
Range
array
(Optional) An array of four numbers [ a
min
a
max
b
min
b
max
] that shall specify
the range of valid values for the a* and b* (B and C) components of the colour
space—that is,
and
Component values falling outside the specified range shall be adjusted to the
nearest valid value without error indication.
Default value: [
−
100 100
−
100 100 ].
Y
C
y
B
B
------
x
R
x
G
–
(
)
y
W
×
x
W
x
G
–
(
)
y
R
×
x
W
x
R
–
(
)
y
×
+
–
z
----------------------------------------------------------------------------------------------------------------------------------
×
=
X
C
Y
C
x
B
y
B
------
×
=
Z
C
Y
C
1 x
B
–
y
B
--------------- 1
–
⎝
⎠
⎜
⎟
⎛
⎞
×
=
X
W
X
A
R
×
X
B
G
×
X
C
B
×
+
+
=
Y
W
Y
A
R
×
Y
B
G
×
Y
C
B
×
+
+
=
Z
W
Z
A
R
×
Z
B
G
×
Z
C
B
×
+
+
=
a
min
a*
a
max
≤
≤
b
min
b* b
max
≤
≤
108
©
Adobe Systems Incorporated 2008 – All rights reserved
149
PDF 32000-1:2008
The second transformation stage shall be
where the function g (x) shall be defined as
EXAMPLE
The following defines the CIE 1976 L*a*b* space with the CCIR XA/11–recommended D65 white point.
The a* and b* components, although theoretically unbounded, are defined to lie in the useful range -128
to +127.
[ /Lab
<< /WhitePoint [ 0.9505 1.0000 1.0890 ]
/Range [ -128 127 -128 127 ]
>>
]
8.6.5.5 ICCBased Colour Spaces
ICCBased colour spaces (PDF 1.3) shall be based on a cross-platform colour profile as defined by the
International Color Consortium (ICC) (see, “Bibliography“). Unlike the CalGray, CalRGB, and Lab colour
spaces, which are characterized by entries in the colour space dictionary, an ICCBased colour space shall be
characterized by a sequence of bytes in a standard format. Details of the profile format can be found in the ICC
specification (see, “Bibliography“).
An ICCBased colour space shall be an array:
[ /ICCBased stream ]
The stream shall contain the ICC profile. Besides the usual entries common to all streams (see Table 5), the
profile stream shall have the additional entries listed in Table 66.
Table 66 – Additional Entries Specific to an ICC Profile Stream Dictionary
Key
Type
Value
N
integer
(Required) The number of colour components in the colour space described
by the ICC profile data. This number shall match the number of components
actually in the ICC profile. N shall be 1, 3, or 4.
L
L* 16
+
116
-------------------
a*
500
---------
+
=
M
L* 16
+
116
-------------------
=
N
L* 16
+
116
-------------------
b*
200
---------
–
=
X
X
W
g L
( )
×
=
Y
Y
W
g M
( )
×
=
Z
Z
W
g N
( )
×
=
g x
( )
x
3
=
if x
6
29
------
≥
g x
( )
108
841
---------
x
4
29
------
–
⎝
⎠
⎛
⎞
×
=
otherwise
78
PDF 32000-1:2008
150
©
Adobe Systems Incorporated 2008 – All rights reserved
The ICC specification is an evolving standard. Table 67 shows the versions of the ICC specification on which
the ICCBased colour spaces that PDF versions 1.3 and later shall use. (Earlier versions of the ICC
specification shall also be supported.)
Conforming writers and readers should follow these guidelines:
•
A conforming reader shall support ICC.1:2004:10 as required by PDF 1.7, which will enable it to properly
render all embedded ICC profiles regardless of the PDF version.
•
A conforming reader shall always process an embedded ICC profile according to the corresponding
version of the PDF being processed as shown in Table 67 above; it shall not substitute the Alternate colour
space in these cases.
•
A conforming writer should use ICC 1:2004-10 profiles. It may embed profiles conforming to a later ICC
version. The conforming reader should process such profiles according to Table 67; if that is not possible,
it shall substitute the Alternate colour space.
•
Conforming writers shall only use the profile types shown in Table 68 for specifying calibrated colour
spaces for colouring graphic objects. Each of the indicated fields shall have one of the values listed for that
field in the second column of the table. Profiles shall satisfy both the criteria shown in the table. The
terminology is taken from the ICC specifications.
Alternate
array or
name
(Optional) An alternate colour space that shall be used in case the one
specified in the stream data is not supported. Non-conforming readers may
use this colour space. The alternate space may be any valid colour space
(except a Pattern colour space) that has the number of components specified
by N. If this entry is omitted and the conforming reader does not understand
the ICC profile data, the colour space that shall be used is DeviceGray,
DeviceRGB, or DeviceCMYK, depending on whether the value of N is 1, 3, or
4, respectively.
There shall not be conversion of source colour values, such as a tint
transformation, when using the alternate colour space. Colour values within
the range of the ICCBased colour space might not be within the range of the
alternate colour space. In this case, the nearest values within the range of the
alternate space shall be substituted.
Range
array
(Optional) An array of 2
×
N numbers [ min
0
max
0
min
1
max
1
… ] that shall
specify the minimum and maximum valid values of the corresponding colour
components. These values shall match the information in the ICC profile.
Default value: [ 0.0 1.0 0.0 1.0 … ].
Metadata
stream
(Optional; PDF 1.4) A metadata stream that shall contain metadata for the
colour space (see 14.3.2, "Metadata Streams").
Table 67 – ICC Specification Versions Supported by ICC Based Colour Spaces
PDF
Version
ICC Specification Version
1.3
3.3
1.4
ICC.1:1998-09 and its addendum ICC.1A:1999-04
1.5
ICC.1:2001-12
1.6
ICC.1:2003-09
1.7
ICC.1:2004-10 (ISO 15076-1:2005)
Table 66 – Additional Entries Specific to an ICC Profile Stream Dictionary (continued)
Key
Type
Value
65
©
Adobe Systems Incorporated 2008 – All rights reserved
151
PDF 32000-1:2008
NOTE 1
XYZ and 16-bit L*a*b* profiles are not listed.
The terminology used in PDF colour spaces and ICC colour profiles is similar, but sometimes the same terms
are used with different meanings. The default value for each component in an ICCBased colour space is 0. The
range of each colour component is a function of the colour space specified by the profile and is indicated in the
ICC specification. The ranges for several ICC colour spaces are shown in Table 69.
Since the ICCBased colour space is being used as a source colour space, only the “to CIE” profile information
(AToB in ICC terminology) shall be used; the “from CIE” (BToA) information shall be ignored when present. An
ICC profile may also specify a rendering intent, but a conforming reader shall ignore this information; the
rendering intent shall be specified in PDF by a separate parameter (see 8.6.5.8, "Rendering Intents").
The requirements stated above apply to an ICCBased colour space that is used to specify the source colours
of graphics objects. When such a space is used as the blending colour space for a transparency group in the
transparent imaging model (see 11.3.4, "Blending Colour Space"; 11.4, "Transparency Groups"; and 11.6.6,
"Transparency Group XObjects"), it shall have both “to CIE” (AToB) and “from CIE” (BToA) information. This is
because the group colour space shall be used as both the destination for objects being painted within the group
and the source for the group’s results. ICC profiles shall also be used in specifying output intents for matching
the colour characteristics of a PDF document with those of a target output device or production environment.
When used in this context, they shall be subject to still other constraints on the “to CIE” and “from CIE”
information; see 14.11.5, "Output Intents", for details.
The representations of ICCBased colour spaces are less compact than CalGray, CalRGB, and Lab, but can
represent a wider range of colour spaces.
NOTE 2
One particular colour space is the “standard RGB” or sRGB, defined in the International Electrotechnical
Commission (IEC) document Color Measurement and Management in Multimedia Systems and Equipment
(see
, “Bibliography“
). In PDF, the sRGB colour space can only be expressed as an ICCBased space,
although it can be approximated by a CalRGB space.
EXAMPLE
The following shows an ICCBased colour space for a typical three-component RGB space. The profile’s
data has been encoded in hexadecimal representation for readability; in actual practice, a lossless
decompression filter such as FlateDecode should be used.
10 0 obj
% Colour space
[ /ICCBased 15 0 R ]
Table 68 – ICC Profile Types
Header Field
Required Value
deviceClass
icSigInputClass ('scnr')
icSigDisplayClass ('mntr')
icSigOutputClass ('prtr')
icSigColorSpaceClass ('spac')
colorSpace
icSigGrayData ('GRAY')
icSigRgbData ('RGB ')
icSigCmykData ('CMYK')
icSigLabData ('Lab ')
Table 69 – Ranges for Typical ICC Colour Spaces
ICC Colour Space
Component Ranges
Gray
[ 0.0 1.0 ]
RGB
[ 0.0 1.0 ]
CMYK
[ 0.0 1.0 ]
L*a*b*
L*: [ 0 100 ]; a* and b*: [
−
128 127 ]
64
PDF 32000-1:2008
152
©
Adobe Systems Incorporated 2008 – All rights reserved
endobj
15 0 obj
% ICC profile stream
<< /N 3
/Alternate /DeviceRGB
/Length 1605
/Filter /ASCIIHexDecode
>>
stream
00 00 02 0C 61 70 70 6C 02 00 00 00 6D 6E 74 72
52 47 42 20 58 59 5A 20 07 CB 00 02 00 16 00 0E
00 22 00 2C 61 63 73 70 41 50 50 4C 00 00 00 00
61 70 70 6C 00 00 04 01 00 00 00 00 00 00 00 02
00 00 00 00 00 00 F6 D4 00 01 00 00 00 00 D3 2B
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 09 64 65 73 63 00 00 00 F0 00 00 00 71
72 58 59 5A 00 00 01 64 00 00 00 14 67 58 59 5A
00 00 01 78 00 00 00 14 62 58 59 5A 00 00 01 8C
00 00 00 14 72 54 52 43 00 00 01 A0 00 00 00 0E
67 54 52 43 00 00 01 B0 00 00 00 0E 62 54 52 43
00 00 01 C0 00 00 00 0E 77 74 70 74 00 00 01 D0
00 00 00 14 63 70 72 74 00 00 01 E4 00 00 00 27
64 65 73 63 00 00 00 00 00 00 00 17 41 70 70 6C
65 20 31 33 22 20 52 47 42 20 53 74 61 6E 64 61
72 64 00 00 00 00 00 00 00 00 00 00 00 17 41 70
70 6C 65 20 31 33 22 20 52 47 42 20 53 74 61 6E
64 61 72 64 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 58 59 5A 58 59 5A 20 00 00 00 00 00 00 63 0A
00 00 35 0F 00 00 03 30 58 59 5A 20 00 00 00 00
00 00 53 3D 00 00 AE 37 00 00 15 76 58 59 5A 20
00 00 00 00 00 00 40 89 00 00 1C AF 00 00 BA 82
63 75 72 76 00 00 00 00 00 00 00 01 01 CC 63 75
63 75 72 76 00 00 00 00 00 00 00 01 01 CC 63 75
63 75 72 76 00 00 00 00 00 00 00 01 01 CC 58 59
58 59 5A 20 00 00 00 00 00 00 F3 1B 00 01 00 00
00 01 67 E7 74 65 78 74 00 00 00 00 20 43 6F 70
79 72 69 67 68 74 20 41 70 70 6C 65 20 43 6F 6D
70 75 74 65 72 73 20 31 39 39 34 00 >
endstream
endobj
8.6.5.6
Default Colour Spaces
Colours that are specified in a device colour space (DeviceGray, DeviceRGB, or DeviceCMYK) are device-
dependent. By setting default colour spaces (PDF 1.1), a conforming writer can request that such colours shall
be systematically transformed (remapped) into device-independent CIE-based colour spaces. This capability
can be useful in a variety of circumstances:
•
A document originally intended for one output device is redirected to a different device.
•
A document is intended to be compatible with non-compliant readers and thus cannot specify CIE-based
colours directly.
•
Colour corrections or rendering intents need to be applied to device colours (see 8.6.5.8, "Rendering
Intents").
A colour space is selected for painting each graphics object. This is either the current colour space parameter
in the graphics state or a colour space given as an entry in an image XObject, inline image, or shading
Documents you may be interested
Documents you may be interested