ghost@SUN.COM (L. Peter Deutsch) (03/28/89)
There is a bug in the 'scale' operator that manifests itself only when scaling in a rotated or skewed coordinate system. The fix is to replace the indicated two lines of the gs_scale procedure in gscoord.c: int gs_scale(gs_state *pgs, floatp sx, floatp sy) { pgs->ctm.xx *= sx; ! pgs->ctm.xy *= sx; ! pgs->ctm.yx *= sy; pgs->ctm.yy *= sy; ...etc... Thanks to Lou Katz for contributing the test case (the SIGGRAPH logo) that uncovered this. - P. D. aladdin!ghost@parcplace.com ...{sun!}parcplace!aladdin!ghost P. O. box 60264, Palo Alto, CA 94306