% TODO: use dicts or prefixes to prevent namespace pollution.
-% Emulation code from Postscript Language Reference.
-
-/*SF
-{
- exch findfont exch
- dup type /arraytype eq
- {makefont}
- {scalefont}
- ifelse
- setfont
-} bind def
-
-/languagelevel where
- {pop languagelevel}
- {1}
-ifelse
-
-2 lt
- { /selectfont /*SF load def }
-if
-
-% end emulation code
-
/pdfmark where
{pop} {userdict /pdfmark /cleartomark load put} ifelse
% llx lly urx ury URI
/mark_URI
-% It's possible to eliminate the coordinate variables by doing [ /Rect [ 7 3
-% roll. That is, however, kind of ugly. It would be nice if this procedure
-% were only included when PDF marks are enabled.
{
- /command exch def
+ /uri exch def
/ury exch def
/urx exch def
/lly exch def
/Action
<<
/Subtype /URI
- /URI command
+ /URI uri
>>
/Subtype /Link
/ANN
stroke
} bind def
-/draw_dashed_line % dx dy thickness dashpattern draw_dashed_line
+/draw_dashed_line % dx dy thickness dashpattern offset draw_dashed_line
{
1 setlinecap
1 setlinejoin
1 setlinejoin
setdash
setlinewidth
+ 8 2 roll
moveto
curveto
stroke