diff -ur glabels-2.2.0/ChangeLog glabels-2.2.0-r1/ChangeLog --- glabels-2.2.0/ChangeLog 2007-12-24 23:09:25.000000000 -0800 +++ glabels-2.2.0-r1/ChangeLog 2008-01-17 21:26:01.000000000 -0800 @@ -1,3 +1,9 @@ +2008-01-16 Jim Evins + + * src/print.c: (print_label): + Bug #1872568. Don't apply special transforms (rotate and + mirror) to clipping region or outline. + 2007-12-25 Jim Evins * glabels.spec.in: Only in glabels-2.2.0-r1: print.patch diff -ur glabels-2.2.0/src/print.c glabels-2.2.0-r1/src/print.c --- glabels-2.2.0/src/print.c 2007-12-24 22:15:04.000000000 -0800 +++ glabels-2.2.0-r1/src/print.c 2008-01-17 21:31:21.000000000 -0800 @@ -504,6 +504,12 @@ /* Transform coordinate system to be relative to upper corner */ /* of the current label */ cairo_translate (pi->cr, x, y); + + clip_to_outline (pi, label); + + cairo_save (pi->cr); + + /* Special transformations. */ if (label->rotate_flag) { gl_debug (DEBUG_PRINT, "Rotate flag set"); cairo_rotate (pi->cr, -M_PI/2.0); @@ -514,13 +520,15 @@ cairo_scale (pi->cr, -1.0, 1.0); } - clip_to_outline (pi, label); gl_label_draw (label, pi->cr, FALSE, record); + + cairo_restore (pi->cr); /* From special transformations. */ + if (outline_flag) { draw_outline (pi, label); } - cairo_restore (pi->cr); + cairo_restore (pi->cr);/* From translation. */ gl_debug (DEBUG_PRINT, "END"); }