Adobe Systems Incorporated 2008 – All rights reserved
Table 84 shows the shading dictionary entries specific to this type of shading, in addition to those common to all
shading dictionaries (see Table 78) and stream dictionaries (see Table 5).
The data stream provides a sequence of Bézier control points and colour values that define the shape and
colours of each patch. All of a patch’s control points are given first, followed by the colour values for its corners.
This differs from a triangle mesh (shading types 4 and 5), in which the coordinates and colour of each vertex
are given together. All control point coordinates are expressed in the shading’s target coordinate space. See
184.108.40.206.5, "Type 4 Shadings (Free-Form Gouraud-Shaded Triangle Meshes)" for further details on the format of
As in free-form triangle meshes (type 4), each patch has an edge flag that indicates which edge, if any, it
shares with the previous patch. An edge flag of 0 begins a new patch, unconnected to any other. This shall be
followed by 12 pairs of coordinates, x
, which specify the Bézier control points that define
the four boundary curves. Figure 30 shows how these control points correspond to the cubic Bézier curves C
, and D
identified in Figure 28. Colour values shall be given for the four corners of the patch, in the
same order as the control points corresponding to the corners. Thus, c
is the colour at coordinates (x
), and c
), as shown in the figure.
Table 84 – Additional Entries Specific to a Type 6 Shading Dictionary
(Required) The number of bits used to represent each geometric
coordinate. The value shall be 1, 2, 4, 8, 12, 16, 24, or 32.
(Required) The number of bits used to represent each colour
component. The value shall be 1, 2, 4, 8, 12, or 16.
(Required) The number of bits used to represent the edge flag for
each patch (see below). The value shall be 2, 4, or 8, but only the
least significant 2 bits in each flag value shall be used. Valid values
for the edge flag shall be 0, 1, 2, and 3.
(Required) An array of numbers specifying how to map coordinates
and colour components into the appropriate ranges of values. The
decoding method is similar to that used in image dictionaries (see
220.127.116.11, "Decode Arrays"). The ranges shall be specified as follows:
Only one pair of c values shall be specified if a Function entry is
(Optional) A 1-in, n-out function or an array of n 1-in, 1-out functions
(where n is the number of colour components in the shading
dictionary’s colour space). If this entry is present, the colour data for
each vertex shall be specified by a single parametric variable rather
than by n separate colour components. The designated function(s)
shall be called with each interpolated value of the parametric
variable to determine the actual colour at each point. Each input
value shall be forced into the range interval specified for the
corresponding colour component in the shading dictionary’s
Decode array. Each function’s domain shall be a superset of that
interval. If the value returned by the function for a given colour
component is out of range, it shall be adjusted to the nearest valid
This entry shall not be used with an Indexed colour space.