From b3284942b4787e79360f989f39573cf4db05be2b Mon Sep 17 00:00:00 2001 From: Jim Evins Date: Thu, 17 Jan 2008 01:52:48 +0000 Subject: [PATCH] 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. git-svn-id: https://glabels.svn.sourceforge.net/svnroot/glabels/trunk@727 f5e0f49d-192f-0410-a22d-a8d8700d0965 --- glabels2/ChangeLog | 6 ++++++ glabels2/src/print.c | 12 ++++++++++-- 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/glabels2/ChangeLog b/glabels2/ChangeLog index 4642fcbb..aab25096 100644 --- a/glabels2/ChangeLog +++ b/glabels2/ChangeLog @@ -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. + 2008-01-01 Jim Evins * src/util.c: diff --git a/glabels2/src/print.c b/glabels2/src/print.c index b19c5c5b..a33e3ad1 100644 --- a/glabels2/src/print.c +++ b/glabels2/src/print.c @@ -504,6 +504,12 @@ print_label (PrintInfo *pi, /* 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 @@ print_label (PrintInfo *pi, 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"); } -- 2.39.5