[texhax] PSTricks circlenode produces an error

Olivier Cailloux olivier.cailloux at gmail.com
Sun Mar 27 14:07:42 CEST 2011

When trying to use \circlenode, ps2pdf complains that the PS file 
produced is invalid. Here is the latex code.

\section{psnode try}
% \begin{pspicture*}(-1,-1)(8,12)
%   \cnodeput(0,0){sq1}{sq}
% \end{pspicture*}


Running latex gives no error. Running dvips gives no error. ps2pdf says:
ps2pdf> Error: /syntaxerror in -file-
ps2pdf> Operand stack:
ps2pdf>    --nostringval--   false   N@
ps2pdf> Execution stack:
ps2pdf>    %interp_exit   .runexec2   --nostringval--   
--nostringval--   --nostringval--   2   %stopped_push   
--nostringval--   --nostringval--   --nostringval--   false   1   
%stopped_push   1878   1   3   %oparray_pop   1877   1   3   
%oparray_pop   1861   1   3   %oparray_pop   1755   1   3   
%oparray_pop   --nostringval--   %errorexec_pop   .runexec2   
--nostringval--   --nostringval--   --nostringval--   2   %stopped_push
ps2pdf> Dictionary stack:
ps2pdf>    --dict:1157/1684(ro)(G)--   --dict:0/20(G)--   
--dict:78/200(L)--   --dict:176/300(L)--   --dict:92/200(L)--   
ps2pdf> Current allocation mode is local
ps2pdf> Last OS error: 2
ps2pdf> Current file position is 121454
ps2pdf> GPL Ghostscript 8.71: Unrecoverable error, exit code 1

The part of the .ps file around byte 121454 (according to vim) is:
%%Page: 1 1
TeXDict begin 1 0 bop 0 TeXcolorgray Black 0 TeXcolorgray
485 540 a
  tx at Dict begin tx at NodeDict begin {5.00002 2 div 6.44444 0.0 add 2 div
2 copy 0.0 sub 4 2 roll Pyth 3.0 add 0.8 add} false /N@( 11 {InitCnode } 
NewNode end  end
  485 540 a @beginspecial @setspecial
   tx at Dict begin STP newpath 0.8 SLW 0  setgray  5.00002 2 div 6.44444
0.0 add 2 div 2 copy 0.0 sub 4 2 roll Pyth 3.0 add CLW 2 div add 0
360 arc closepath gsave 0.8 SLW 0  setgray  1. .setopacityalpha  0
  setlinecap stroke  grestore end

The byte 121454 is the opening parenthesis after the /N at . I don't speak 
PS so I don't know what is (or if it is) wrong there.

The resulting pdf file opens correctly with evince and contains the 
expected contents except the ps node.

I think the problem lies in pstricks itself, not in ps2pdf, because 
dvi2pdf also produces errors (or is this an impossible route when using 
pstricks?), and pslatex does not work either (runs forever).

Using \cnodeput instead of \circlenode produces a valid file with no error.

I tried to unpack /PSTricks/-/TDS/./tgz 
(http://archiv.dante.de/~herbert/) in my home and checked that latex 
uses these files (according to its output where it prints the paths). 
But the result is the same.

/Does the error happen for someone else? Any suggestion?

More information about the texhax mailing list