cb60366b1d
fixes page-label orientation when texttops is used in the filter chain (bug #572338).
36 lines
1.2 KiB
Diff
36 lines
1.2 KiB
Diff
diff -up cups-1.4.3/filter/texttops.c.texttops-rotate-page cups-1.4.3/filter/texttops.c
|
|
--- cups-1.4.3/filter/texttops.c.texttops-rotate-page 2008-11-06 16:42:18.000000000 +0000
|
|
+++ cups-1.4.3/filter/texttops.c 2010-05-18 16:42:23.669940884 +0100
|
|
@@ -97,6 +97,13 @@ WritePage(void)
|
|
|
|
puts("gsave");
|
|
|
|
+ /* If we're opereating in Landscape (Orientation == 1 or Orientation == 3)
|
|
+ then rotate and translate the page */
|
|
+ if ( Orientation & 1 ) {
|
|
+ printf ("%d rotate\n", (Orientation & 3) * 90 );
|
|
+ printf("0 %.0f neg translate\n", PageLength);
|
|
+ }
|
|
+
|
|
if (PrettyPrint)
|
|
printf("%d H\n", NumPages);
|
|
|
|
@@ -212,7 +219,7 @@ WriteProlog(const char *title, /* I - T
|
|
|
|
puts("%!PS-Adobe-3.0");
|
|
printf("%%%%BoundingBox: 0 0 %.0f %.0f\n", PageWidth, PageLength);
|
|
- printf("%%cupsRotation: %d\n", (Orientation & 3) * 90);
|
|
+ puts("%cupsRotation: 0");
|
|
puts("%%Creator: texttops/" CUPS_SVERSION);
|
|
printf("%%%%CreationDate: %s\n", curdate);
|
|
WriteTextComment("Title", title);
|
|
@@ -549,6 +556,8 @@ WriteProlog(const char *title, /* I - T
|
|
puts("%%EndComments");
|
|
|
|
puts("%%BeginProlog");
|
|
+ printf("%%%%Orientation: %s\n",
|
|
+ Orientation & 1 ? "Landscape" : "Portrait");
|
|
|
|
/*
|
|
* Download any missing fonts...
|