Previous Next


                                         231
SECTION 4.4                                            Path Construction and Painting



Stroking

The S operator paints a line along the current path. The stroked line follows each
straight or curved segment in the path, centered on the segment with sides paral-
lel to it. Each of the path’s subpaths is treated separately.

The results of the S operator depend on the current settings of various parameters
in the graphics state (see Section 4.3, “Graphics State,” for further information on
these parameters):

• The width of the stroked line is determined by the current line width parameter
  (“Line Width” on page 215).
• The color or pattern of the line is determined by the current color and color
  space for stroking operations.
• The line can be painted either solid or with a dash pattern, as specified by the
  current line dash pattern (“Line Dash Pattern” on page 217).
• If a subpath is open, the unconnected ends are treated according to the current
  line cap style, which may be butt, rounded, or square (“Line Cap Style” on page
  216).
• Wherever two consecutive segments are connected, the joint between them is
  treated according to the current line join style, which may be mitered, rounded,
  or beveled (“Line Join Style” on page 216). Mitered joins are also subject to the
  current miter limit (“Miter Limit” on page 217).
  Note: Points at which unconnected segments happen to meet or intersect receive
  no special treatment. In particular, using an explicit l operator to give the appear-
  ance of closing a subpath, rather than using h, may result in a messy corner, be-
  cause line caps are applied instead of a line join.
• The stroke adjustment parameter (PDF 1.2) specifies that coordinates and line
  widths be adjusted automatically to produce strokes of uniform thickness
  despite rasterization effects (Section 6.5.4, “Automatic Stroke Adjustment”).

If a subpath is degenerate (consists of a single-point closed path or of two or
more points at the same coordinates), the S operator paints it only if round line
caps have been specified, producing a filled circle centered at the single point. If
butt or projecting square line caps have been specified, S produces no output, be-
cause the orientation of the caps would be indeterminate. (This rule applies only
to zero-length subpaths of the path being stroked, and not to zero-length dashes

Previous Next