SECTION 4.3
215
Graphics State
These operators can be used to encapsulate a graphical element so that it can
modify parameters of the graphics state and later restore them to their previous
values. Occurrences of the
q
and
Q
operators must be balanced within a given
content stream (or within the sequence of streams specified in a page dictionary’s
Contents
array).
4.3.2 Details of Graphics State Parameters
This section gives details of several of the device-independent graphics state pa-
rameters listed in Table 4.2.
Line Width
The
line width
parameter specifies the thickness of the line used to stroke a path.
It is a non-negative number expressed in user space units; stroking a path entails
painting all points whose perpendicular distance from the path in user space is
less than or equal to half the line width. The effect produced in device space
depends on the current transformation matrix (CTM) in effect at the time the
path is stroked. If the CTM specifies scaling by different factors in the horizontal
and vertical dimensions, the thickness of stroked lines in device space will vary
according to their orientation. The actual line width achieved can differ from the
requested width by as much as 2 device pixels, depending on the positions of lines
with respect to the pixel grid. Automatic stroke adjustment can be used to ensure
uniform line width; see Section 6.5.4, “Automatic Stroke Adjustment.”
A line width of 0 denotes the thinnest line that can be rendered at device resolu-
tion: 1 device pixel wide. However, some devices cannot reproduce 1-pixel lines,
and on high-resolution devices, they are nearly invisible. Since the results of ren-
dering such zero-width lines are device-dependent, their use is not recommend-
ed.