Fractional numbers as width/heigth arguments to (rect pt width height)
results in the width/height being represented using Scheme external
representation of fraction numbers, ie 10/3, in the PostScript output,
which is not understood by PostScript (AFAIK).
Try
(show-w/ps2-text-channel (current-output-port)
(stroke (rect (pt 0 0) 0 10/3)))
which will result in 10/3 (as opposed to 3.333333 or something alike)
in the position of a PostScript numeral in the output.
I believe it was just an oversight of the author who forgot to do
PSnum, a FPS utility function to output PostScript numerals, on the
width and height.
Below is a patch that does PSnum on the width and height.
*** ps.path.scm.orig Fri Aug 23 15:43:17 2002
--- ps.path.scm Fri Feb 28 19:59:30 2003
***************
*** 184,190 ****
(format port "~d ~d m ~d ~d l ~d ~d l ~d ~d l closepath"
llx lly urx lly urx ury llx ury)
(format port "~d ~d ~d ~d ~a"
! px py w h
(case method
((stroke-show stroke-stroke stroke-fill)
"rectstroke")
--- 184,190 ----
(format port "~d ~d m ~d ~d l ~d ~d l ~d ~d l closepath"
llx lly urx lly urx ury llx ury)
(format port "~d ~d ~d ~d ~a"
! px py (PSnum w) (PSnum h)
(case method
((stroke-show stroke-stroke stroke-fill)
"rectstroke")
IIRC someone (Mike Sperber?) mentioned that some maintenance had been
done to FPS. If it's ready to be released it would be interesting to
see what has been done.
|