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...