| {{header}} |
| {{object 1 0}} << |
| /Type /Catalog |
| /Pages 2 0 R |
| >> |
| endobj |
| {{object 2 0}} << |
| /Type /Pages |
| /Count 1 |
| /Kids [3 0 R] |
| >> |
| endobj |
| {{object 3 0}} << |
| /Type /Page |
| /Parent 2 0 R |
| /Contents 4 0 R |
| /Annots [5 0 R] |
| /MediaBox [0 0 200 200] |
| /Resources << |
| /ExtGState << |
| /GS << |
| /Type /ExtGState |
| /CA 0.5 |
| /ca 0.5 |
| >> |
| >> |
| >> |
| >> |
| endobj |
| {{object 4 0}} << |
| {{streamlen}} |
| >> |
| stream |
| q |
| /GS gs |
| 255 0 0 rg |
| |
| % Stroke painting rules for single paths is defined in |
| % Section 8.5.3.2 of ISO 32000-1:2008 (the last paragraph) |
| |
| % Butt cap paths, stroked only (none should be painted) |
| 0 J |
| 5 w |
| 0 0 255 RG |
| 10 10 m |
| S |
| 4 w |
| 0 255 0 RG |
| 50 50 m |
| 50 50 l |
| S |
| 3 w |
| 255 0 0 RG |
| 150 150 m |
| 150 150 l |
| s |
| 255 0 0 RG |
| 160 160 m |
| s |
| |
| % Round cap paths, stroked only (some should be painted) |
| 1 J |
| % "A single-point open subpath (specified by a trailing m operator) shall |
| % produce no output" |
| 5 w |
| 255 255 0 RG |
| 20 20 m |
| S |
| % Open single point path. Should be drawn. |
| 4 w |
| 255 0 255 RG |
| 50 150 m |
| 50 150 l |
| S |
| % Closed single point path. Should be drawn. |
| 3 w |
| 0 255 255 RG |
| 150 50 m |
| 150 50 l |
| s |
| % This path is closed by the s operator so it is drawn. |
| 0 255 255 RG |
| 160 60 m |
| s |
| % Open single point path with extra points. Should be drawn. |
| 4 w |
| 255 0 255 RG |
| 40 140 m |
| 40 140 l |
| 40 140 l |
| 40 140 l |
| 40 140 l |
| 40 140 l |
| S |
| |
| % Projecting square cap paths, stroked only (none should be painted) |
| 2 J |
| 5 w |
| 0 0 255 RG |
| 30 30 m |
| S |
| 4 w |
| 0 255 0 RG |
| 25 25 m |
| 25 25 l |
| S |
| 3 w |
| 255 0 0 RG |
| 125 125 m |
| 125 125 l |
| s |
| 255 0 0 RG |
| 135 135 m |
| s |
| |
| % Fill painting rules for single point paths is defined in |
| % Section 8.5.3.3.1 of ISO 32000-1:2008 |
| % |
| % All paths that contain the l operator should fill a single device pixel |
| % regardless of cap style. This pixel goes under the stroke, and is part of the |
| % knockout group. So the pixel should only visible in cases where the stroke is |
| % not drawn. |
| |
| % Butt cap paths, stroked & filled |
| 0 J |
| 5 w |
| 0 0 255 RG |
| 190 190 m |
| B |
| 4 w |
| 0 255 0 RG |
| 75 75 m |
| 75 75 l |
| B |
| 3 w |
| 255 0 0 RG |
| 175 175 m |
| 175 175 l |
| b |
| 255 0 0 RG |
| 185 185 m |
| b |
| |
| % Round cap paths, stroked & filled |
| 1 J |
| 5 w |
| 255 255 0 RG |
| 180 180 m |
| B |
| 4 w |
| 255 0 255 RG |
| 75 175 m |
| 75 175 l |
| B |
| 3 w |
| 0 255 255 RG |
| 175 75 m |
| 175 75 l |
| b |
| % This path is closed by the b operator so it is drawn. |
| 0 255 255 RG |
| 185 85 m |
| b |
| |
| % Separated stroke and fill operators means the single pixel and the stroke are |
| % not in a knockout group so the single pixel fill should be visible under the |
| % transparent stroke |
| 4 w |
| 0 255 0 RG |
| 85 175 m |
| 85 175 l |
| f |
| 85 175 m |
| 85 175 l |
| S |
| |
| % Projecting square cap paths, stroked & filled |
| 2 J |
| 5 w |
| 0 0 255 RG |
| 170 170 m |
| B |
| 4 w |
| 0 255 0 RG |
| 175 100 m |
| 175 100 l |
| B |
| 3 w |
| 255 0 0 RG |
| 100 175 m |
| 100 175 l |
| b |
| 255 0 0 RG |
| 110 185 m |
| b |
| |
| Q |
| endstream |
| endobj |
| {{object 5 0}} << |
| % An "Ink Dot", a single point Ink annotation |
| /Type /Annot |
| /Subtype /Ink |
| /C [1 0 1] |
| /InkList [[100 100]] |
| /Rect [90 90 110 110] |
| >> |
| {{xref}} |
| {{trailer}} |
| {{startxref}} |
| %%EOF |