hello

No, I just used the CD of May 12.  should i recompile gs and see what happens?

thanks

gabi


On 6/18/07, Russ Cox <[EMAIL PROTECTED]> wrote:
Did you compile your own copy of ghostscript?
This is a common problem if you compile directly
from the gs sources; there are some Plan 9 specific
changes that must be made.  See /sys/src/cmd/gs/mkfile:

# If you get weird floating point errors, the culprit is usually the
# halftone code, which converts double to uint, something 8c handles
# incorrectly (treats as double to int).  Look in src/gshtscr.c for a line like
#
#       sample = (ht_sample_t)((value+1) * max_ht_sample);
#
# and change it to one of:
#
#       sample = (int)(vlong)((value+1) * max_ht_sample);
#       sample = (ht_sample_t)(value * max_ht_sample) + max_ht_sample;
#
# depending on your preference.
#
# Also, recent versions of src/gxshade1.c cause the compiler to run out
# of registers.  Brucee is looking into this.  In the meantime, use this
# replacement:
#
#       private inline void
#       make_other_poles(patch_curve_t curve[4])
#       {
#           int i, j;
#
#           for (i = 0; i < 4; i++) {
#               j = (i + 1) % 4;
#               curve[i].control[0].x = (curve[i].vertex.p.x * 2 + 
curve[j].vertex.p.x);
#               curve[i].control[0].x /= 3;
#               curve[i].control[0].y = (curve[i].vertex.p.y * 2 + 
curve[j].vertex.p.y);
#               curve[i].control[0].y /= 3;
#               curve[i].control[1].x = (curve[i].vertex.p.x + 
curve[j].vertex.p.x * 2);
#               curve[i].control[1].y /= 3;
#               curve[i].control[1].y = (curve[i].vertex.p.y + 
curve[j].vertex.p.y * 2);
#               curve[i].control[1].y /= 3;
#               curve[i].straight = true;
#           }
#       }
#
# (the original includes the /3 in the big expressions).

The source in the distribution should be patched already.
Also I thought I fixed 8c to do the right float -> uint
conversion, but it would have been quite a while ago
and I don't remember.

Russ


Reply via email to