In article <
575b9db5-0632-4c5f...@googlegroups.com>,
jdawi...@gmail.com says...
I believe that Distiller is incorrect, and is 'probably' applying an
incorrect optimisation. Your original code is:
144 72 moveto 144 144 2 copy 72 144 curveto
72 144 moveto 144 144 2 copy 144 72 curveto
StrokeCode
Distiller makes a PDF containing:
q 1 0 0 1 144 72 cm 0 0 m
0 72 0 72 -72 72 c
0 72 0 72 0 0 c
S
Q
Whereas Ghostscript (more accurately the Ghostscript pdfwrite device)
produces:
1440 720 m
1440 1440 1440 1440 720 1440 c
720 1440 m
1440 1440 1440 1440 1440 720 c
S
(The pdfwrite device works at 720 dpi by default, so just divide all the
numbers by 10, or remake the file specifying -r72)
The linecap/linejoin styles in both cases are set/reset correctly
matching the original PostScript, so I haven't bothered to put these
her, we can treat the 'StrokeCode' as a simple stroke. However.....
Notice that the intermediate 'moveto' has been lost in the Distiller
produced PDF file, and the two curves have been optimised together by
altering the current matrix. This has the (surprising, perhaps) effect
of causing the left end of the path to be a *join* rather than a cap,
with the result that you get the wrong kind of terminator.
So it looks to me like you've tripped over an unfortunate optimisation
in Distiller which is invalid in your particular case.
Ken