[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#901408: marked as done (cups-filters: gstoraster orientation problem)



Your message dated Tue, 26 Jun 2018 18:11:03 +0100
with message-id <26062018105922.59604d7cb2d1@desktop.copernicus.org.uk>
and subject line Re: Bug#901408: ppd file and examples
has caused the Debian Bug report #901408,
regarding cups-filters: gstoraster orientation problem
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact owner@bugs.debian.org
immediately.)


-- 
901408: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=901408
Debian Bug Tracking System
Contact owner@bugs.debian.org with problems
--- Begin Message ---
Package: cups-filters
Version: 1.11.6-3
Severity: normal

Dear Maintainer,

This problem arose with upgrade from Jessie to Stretch.

The problem I'm seeing seems to be in the CUPS filter gstoraster. That is, all is well at the preceding step:

# /usr/sbin/cupsfilter -p /etc/cups/ppd/Zebra.ppd -m application/vnd.cups-pdf -o orientation-requested=3 tag_generator.pdf > out.pdf

Well, almost. It was necessary to include the "orientation-requested=3" option to keep the document from rotating.

But at the next step, the document is laid on its side no matter the orientation requested:

# /usr/sbin/cupsfilter -p /etc/cups/ppd/Zebra.ppd -m application/vnd.cups-raster  out.pdf > out.ras


Or, in more detail,

# pdfinfo out.pdf
Producer:       PDF::API2 2.023 [linux]
Tagged:         no
UserProperties: no
Suspects:       no
Form:           none
JavaScript:     no
Pages:          1
Encrypted:      no
Page size:      90 x 144 pts
Page rot:       0
File size:      14151 bytes
Optimized:      no
PDF version:    1.4

output of "/usr/sbin/cupsfilter -p /etc/cups/ppd/Zebra.ppd -m application/vnd.cups-raster  out.pdf > out.ras" to standard error says this:

DEBUG: argv[0]="cupsfilter"
DEBUG: argv[1]="1"
DEBUG: argv[2]="root"
DEBUG: argv[3]="out.pdf"
DEBUG: argv[4]="1"
DEBUG: argv[5]=""
DEBUG: argv[6]="out.pdf"
DEBUG: envp[0]="<CFProcessPath>"
DEBUG: envp[1]="CONTENT_TYPE=application/pdf"
DEBUG: envp[2]="CUPS_DATADIR=/usr/share/cups"
DEBUG: envp[3]="CUPS_FONTPATH=/usr/share/cups/fonts"
DEBUG: envp[4]="CUPS_SERVERBIN=/usr/lib/cups"
DEBUG: envp[5]="CUPS_SERVERROOT=/etc/cups"
DEBUG: envp[6]="LANG=en_US.UTF8"
DEBUG: envp[7]="PATH=/usr/lib/cups/filter:/usr/bin:/usr/sbin:/bin:/usr/bin"
DEBUG: envp[8]="PPD=/etc/cups/ppd/Zebra.ppd"
DEBUG: envp[9]="PRINTER_INFO=cupsfilter"
DEBUG: envp[10]="PRINTER_LOCATION=Unknown"
DEBUG: envp[11]="PRINTER=cupsfilter"
DEBUG: envp[12]="RIP_MAX_CACHE=128m"
DEBUG: envp[13]="USER=root"
DEBUG: envp[14]="CHARSET=utf-8"
DEBUG: envp[15]="FINAL_CONTENT_TYPE=application/vnd.cups-raster"
INFO: pdftopdf (PID 8482) started.
INFO: gstoraster (PID 8483) started.
DEBUG: OUTFORMAT="(null)", so output format will be CUPS/PWG Raster
DEBUG: pdftopdf: Last filter determined by the PPD: rastertolabel; FINAL_CONTENT_TYPE: application/vnd.cups-raster => pdftopdf will not log pages in page_log.
DEBUG: Color Manager: Calibration Mode/Off
DEBUG: Calling FindDeviceById(cups-cupsfilter)
DEBUG: Failed to send: org.freedesktop.ColorManager.NotFound:device id 'cups-cupsfilter' does not exist
DEBUG: Failed to get find device cups-cupsfilter
DEBUG: Calling FindDeviceById(cups-cupsfilter)
DEBUG: Failed to send: org.freedesktop.ColorManager.NotFound:device id 'cups-cupsfilter' does not exist
DEBUG: Failed to get device cups-cupsfilter
INFO: Color Manager: no profiles specified in PPD
DEBUG: Color Manager: ICC Profile: None
DEBUG: Ghostscript using Any-Part-of-Pixel method to fill paths.
DEBUG: Ghostscript command line: gs -dQUIET -dPARANOIDSAFER -dNOPAUSE -dBATCH -dNOINTERPOLATE -dNOMEDIAATTRS -sstdout=%stderr -sOutputFile=%stdout -sDEVICE=cups -dAdvanceDistance=1000 -r300x300 -dDEVICEWIDTHPOINTS=90 -dDEVICEHEIGHTPOINTS=162 -dcupsBitsPerColor=1 -dcupsColorOrder=0 -dcupsColorSpace=3 -dcupsCompression=-1 -dcupsRowStep=200 -scupsPageSizeName=w90h162 -I/usr/share/cups/fonts -c '<</.HWMargins[0.000000 0.000000 0.000000 0.000000] /Margins[0 0]>>setpagedevice' -f -_
DEBUG: envp[0]="<CFProcessPath>"
DEBUG: envp[1]="CONTENT_TYPE=application/pdf"
DEBUG: envp[2]="CUPS_DATADIR=/usr/share/cups"
DEBUG: envp[3]="CUPS_FONTPATH=/usr/share/cups/fonts"
DEBUG: envp[4]="CUPS_SERVERBIN=/usr/lib/cups"
DEBUG: envp[5]="CUPS_SERVERROOT=/etc/cups"
DEBUG: envp[6]="LANG=en_US.UTF8"
DEBUG: envp[7]="PATH=/usr/lib/cups/filter:/usr/bin:/usr/sbin:/bin:/usr/bin"
DEBUG: envp[8]="PPD=/etc/cups/ppd/Zebra.ppd"
DEBUG: envp[9]="PRINTER_INFO=cupsfilter"
DEBUG: envp[10]="PRINTER_LOCATION=Unknown"
DEBUG: envp[11]="PRINTER=cupsfilter"
DEBUG: envp[12]="RIP_MAX_CACHE=128m"
DEBUG: envp[13]="USER=root"
DEBUG: envp[14]="CHARSET=utf-8"
DEBUG: envp[15]="FINAL_CONTENT_TYPE=application/vnd.cups-raster"
INFO: pdftopdf (PID 8482) exited with no errors.
INFO: Start rendering...
INFO: Processing page 1...
INFO: Processing page 2...
INFO: Rendering completed
INFO: gstoraster (PID 8483) exited with no errors.

Note that Ghostscript is called with page size 90 by 162. But when one views the output with rasterview,

CUPS Raster Page Attributes:

MediaClass = ""
MediaColor = ""
MediaType = ""
OutputType = ""
AdvanceDistance = 1000
AdvanceMedia = 0
Collate = 0
CutMedia = 0
Duplex = 0
HWResolution = [ 300 300 ]
ImagingBoundingBox = [ 0 0 144 90 ]
InsertSheet = 0
Jog = 0
LeadingEdge = 0
Margins = [ 0 0 ]
ManualFeed = 0
MediaPosition = 0
MediaWeight = 0
MirrorPrint = 0
NegativePrint = 0
NumCopies = 1
Orientation = 0
OutputFaceUp = 0
PageSize = [ 144 90 ]
Separations = 0
TraySwitch = 0
Tumble = 0
cupsWidth = 600
cupsHeight = 375
cupsMediaType = 0
cupsBitsPerColor = 1
cupsBitsPerPixel = 1
cupsBytesPerLine = 75
cupsColorOrder = CUPS_ORDER_CHUNKED
cupsColorSpace = CUPS_CSPACE_K
cupsCompression = -1
cupsRowCount = 0
cupsRowFeed = 0
cupsRowStep = 200
cupsNumColors = 1
cupsBorderlessScalingFactor = 1.000000
cupsPageSize = [ 144.000000 90.000000 ]
cupsImagingBBox = [ 0.000000 0.000000 144.000000 90.000000 ]
cupsInteger1 = 0
cupsInteger2 = 0
cupsInteger3 = 0
cupsInteger4 = 0
cupsInteger5 = 0
cupsInteger6 = 0
cupsInteger7 = 0
cupsInteger8 = 0
cupsInteger9 = 0
cupsInteger10 = 0
cupsInteger11 = 0
cupsInteger12 = 0
cupsInteger13 = 0
cupsInteger14 = 0
cupsInteger15 = 0
cupsInteger16 = 0
cupsReal1 = 0.000000
cupsReal2 = 0.000000
cupsReal3 = 0.000000
cupsReal4 = 0.000000
cupsReal5 = 0.000000
cupsReal6 = 0.000000
cupsReal7 = 0.000000
cupsReal8 = 0.000000
cupsReal9 = 0.000000
cupsReal10 = 0.000000
cupsReal11 = 0.000000
cupsReal12 = 0.000000
cupsReal13 = 0.000000
cupsReal14 = 0.000000
cupsReal15 = 0.000000
cupsReal16 = 0.000000
cupsString1 = ""
cupsString2 = ""
cupsString3 = ""
cupsString4 = ""
cupsString5 = ""
cupsString6 = ""
cupsString7 = ""
cupsString8 = ""
cupsString9 = ""
cupsString10 = ""
cupsString11 = ""
cupsString12 = ""
cupsString13 = ""
cupsString14 = ""
cupsString15 = ""
cupsString16 = ""
cupsMarkerType = ""
cupsRenderingIntent = ""
cupsPageSizeName = "w90h162"

Note that width and height were transposed.



-- System Information:
Debian Release: 9.4
  APT prefers stable
  APT policy: (500, 'stable')
Architecture: amd64 (x86_64)

Kernel: Linux 3.16.0-4-amd64 (SMP w/1 CPU core)
Locale: LANG=en_US.utf8, LC_CTYPE=en_US.utf8 (charmap=UTF-8), LANGUAGE=en_US.utf8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)

Versions of packages cups-filters depends on:
ii  bc                               1.06.95-9+b3
ii  cups-filters-core-drivers        1.11.6-3
ii  ghostscript                      9.20~dfsg-3.2+deb9u1
ii  imagemagick                      8:6.9.7.4+dfsg-11+deb9u4
ii  imagemagick-6.q16 [imagemagick]  8:6.9.7.4+dfsg-11+deb9u4
ii  libc6                            2.24-11+deb9u3
ii  libcups2                         2.2.1-8+deb9u1
ii  libcupsfilters1                  1.11.6-3
ii  libcupsimage2                    2.2.1-8+deb9u1
ii  libfontconfig1                   2.11.0-6.7+b1
ii  libfontembed1                    1.11.6-3
ii  libgcc1                          1:6.3.0-18+deb9u1
ii  libijs-0.35                      0.35-12
ii  libpoppler64                     0.48.0-2+deb9u2
ii  libqpdf17                        6.0.0-2
ii  libstdc++6                       6.3.0-18+deb9u1
ii  poppler-utils                    0.48.0-2+deb9u2

Versions of packages cups-filters recommends:
ii  colord             1.3.3-2
ii  liblouisutdml-bin  2.6.0-3+b2

Versions of packages cups-filters suggests:
pn  antiword                                   <none>
pn  docx2txt                                   <none>
ii  foomatic-db-compressed-ppds [foomatic-db]  20161201-1

-- no debconf information

--- End Message ---
--- Begin Message ---
On Mon 25 Jun 2018 at 15:14:44 -0500, Mark Copper wrote:

> Attached are two examples of pdf files that are auto-rotated 90 degrees no
> matter the Custom pagesize or orientation requested on the command line.
> 
> Also attached is the PPD file that comes with Stretch although it bears
> mentioning that neither the Wheezy nor the Zebra supplied PPD files fare
> any better.
> 
> These files print either in landscape or portrait orientation as requested
> by custom pagesize in Wheezy.

I am working on stretch with the PPD as-provided, and using rasterview
v1.7. tag_generator.pdf is a portrait PDF page:

Page size:      90 x 144 pts
Page rot:       0

On conversion from pdf to vnd.cups-pdf the page will not be rotated by
pdftopdf and the short edge will be fed through the printer first, as is
the case with most printers. (The -o orientation-requested=3 option
produces no rotation). For out.pdf

Page size:      90 x 144 pts                                                                                            
Page rot:       0

For belt_advisory.pdf:

Page size:      162 x 90 pts
Page rot:       0

This is a landscape PDF page. On conversion from pdf to vnd.cups-pdf the
page will be rotated by pdftopdf and the short edge will be fed through
the printer first. For out.pdf:

Page size:      162 x 90 pts
Page rot:       270

The PPD has *LandscapeOrientation: Plus90, so the rotation is 90 degrees
anticlockwise.

I observe the behaviour you describe with both your sample PDFs. For
example:

/usr/sbin/cupsfilter -p ~/Zebra.ppd  -m application/vnd.cups-raster belt_advisory.pdf > out.ras

The behaviour occurs because of Zebra.ppd and pdftopdf and gstoraster
merely act on what is in that file. A solution is:

/usr/sbin/cupsfilter -p ~/Zebra.ppd -m application/vnd.cups-raster -o 'nopdfautorotate fit-to-page' belt_advisory.pdf > out.ras

Because this solution exists within the framework of cups-filters I am
closing this report.

I'll point out that wheezy CUPS is EOL and that PDF rotation is treated
there quite differently compared to what happens on jessie and stretch.

Cheers,

Brian.

--- End Message ---

Reply to: