Re: Gutenprint 5.3.4: only on 32-bit failures with "Image is too long/wide for the page" for certain PPDs

Solomon Peachy <[email protected]>
Newsgroups gmane.linux.printing.gimp-print.devel
Message-ID <[email protected]>
On Sat, Sep 04, 2021 at 10:03:33AM -0400, Robert Krawitz wrote:
> > Only on 32-bit (i586) the cupsfilter command fails for the PPDs
> > listed below with output excerpts from the full test log file.

> All of these are dyesub printers, which might or might not be the issue.

What these printers share in common is non-printable margins that must 
be present in the data stream (eg the imageable area is 1844 pixels wide 
but the printer requires 1920 pixels to be sent per row) and that is 
represented by page margins.

In this case it sounds like we're getting hit with behavioral 
(rounding?) differences between x87 and SSE2 floating point.

Here's a representative example from the full log:

[10846s] INFO: pdftopdf (PID 1693) started.
[10846s] INFO: gstoraster (PID 1694) started.
[10846s] INFO: rastertogutenprint.5.3 (PID 1695) started.
[10846s] DEBUG: OUTFORMAT="<none>", so output format will be CUPS/PWG Raster
[10846s] DEBUG: pdftopdf: Last filter determined by the PPD: rastertogutenprint.5.3; FINAL_CONTENT_TYPE: application/vnd.cups-raster => pdftopdf will not log pages in page_log.
[10846s] DEBUG: PDF interactive form and annotation flattening done via QPDF
[10846s] INFO: pdftopdf (PID 1693) exited with no errors.
[10846s] DEBUG: Color Manager: Calibration Mode/Off
[10846s] INFO: Color Manager: no profiles specified in PPD
[10846s] DEBUG: Color Manager: ICC Profile: None
[10846s] DEBUG: Ghostscript using Any-Part-of-Pixel method to fill paths.
[10846s] DEBUG: Ghostscript command line: gs -dQUIET -dSAFER -dNOPAUSE -dBATCH -dNOINTERPOLATE -dNOMEDIAATTRS -dShowAcroForm -sstdout=%stderr -sOutputFile=%stdout -sDEVICE=cups -sMediaType=Glossy -r301x301 -dDEVICEWIDTHPOINTS=612 -dDEVICEHEIGHTPOINTS=864 -dcupsBitsPerColor=8 -dcupsColorOrder=0 -dcupsColorSpace=1 -dcupsCompression=1 -scupsPageSizeName=w612h864 -I/usr/share/cups/fonts -c '<</.HWMargins[18.179001 72.000000 18.179993 72.000000] /Margins[0 0]>>setpagedevice' -f -_
[10846s] DEBUG: envp[0]="<CFProcessPath>"
[10846s] DEBUG: envp[1]="CONTENT_TYPE=application/pdf"
[10846s] DEBUG: envp[2]="CUPS_DATADIR=/usr/share/cups"
[10846s] DEBUG: envp[3]="CUPS_FONTPATH=/usr/share/cups/fonts"
[10846s] DEBUG: envp[4]="CUPS_SERVERBIN=/usr/lib/cups"
[10846s] DEBUG: envp[5]="CUPS_SERVERROOT=/etc/cups"
[10846s] DEBUG: envp[6]="LANG=C.UTF8"
[10846s] DEBUG: envp[7]="PATH=/usr/lib/cups/filter:/usr/bin:/usr/sbin:/bin:/usr/bin"
[10846s] DEBUG: envp[8]="PPD=/usr/share/cups/model/gutenprint/5.3/C/stp-kodak-1400.5.3.ppd.gz"
[10846s] DEBUG: envp[9]="PRINTER_INFO=cupsfilter"
[10846s] DEBUG: envp[10]="PRINTER_LOCATION=Unknown"
[10846s] DEBUG: envp[11]="PRINTER=cupsfilter"
[10846s] DEBUG: envp[12]="RIP_MAX_CACHE=128m"
[10846s] DEBUG: envp[13]="USER=abuild"
[10846s] DEBUG: envp[14]="CHARSET=utf-8"
[10846s] DEBUG: envp[15]="FINAL_CONTENT_TYPE=application/vnd.cups-raster"
[10846s] DEBUG: Gutenprint: ================ Printing page 1      ================
[10846s] PAGE: 1 1
[10846s] DEBUG: Gutenprint: Initialize page
[10846s] DEBUG: Gutenprint:   Set special string ChannelBitDepth to 8
[10846s] DEBUG: Gutenprint:   Set special string PrintingMode to Color
[10846s] DEBUG: Gutenprint:   Set special string InputImageType to RGB
[10846s] DEBUG: Gutenprint:   Set special parameter Resolution to choice 0 (301x301)
[10846s] DEBUG: Gutenprint:   Clear special parameter Quality
[10846s] DEBUG: Gutenprint:   Set special string MediaType to Glossy
[10846s] DEBUG: Gutenprint:   PageSize = 612x792
[10846s] DEBUG: Gutenprint:   Using page size w612h864 with (792, 612)
[10846s] DEBUG: Gutenprint:   Set special string PageSize to w612h864
[10846s] DEBUG: Gutenprint:   Set special string JobMode to Job
[10846s] DEBUG: Gutenprint:   Validating options
[10846s] DEBUG: Gutenprint:     Clearing string InputSlot ((null))
[10846s] DEBUG: Gutenprint:     Clearing string Duplex ((null))
[10846s] DEBUG: Gutenprint:     Clearing string STPIOutputType ((null))
[10846s] DEBUG: Gutenprint:     Setting default string STPIOutputType to (null)
[10846s] DEBUG: Gutenprint:     Clearing string Quality ((null))
[10846s] DEBUG: Gutenprint:   Done validating options
[10846s] DEBUG: Gutenprint:   limits w 612.359 l 18.179 r 594.179  h 864.000 t 72.000 b 792.000
[10846s] DEBUG: Gutenprint:   max limits l 18.179 r 594.179 t 72.000 b 792.000
[10846s] DEBUG: Gutenprint:   Adjusting left margin from 18.179 to 18.179
[10846s] DEBUG: Gutenprint:   Adjusting right margin from 594.179 to 594.179
[10846s] DEBUG: Gutenprint:   Adjusting top margin from 72.000 to 72.000
[10846s] DEBUG: Gutenprint:   Adjusting bottom margin from 792.000 to 792.000
[10846s] DEBUG: Gutenprint:   CUPS settings w 2408 l 75 r 75  h 3010 t 301 b 301
[10846s] DEBUG: Gutenprint:        adjusted w 2408 h 3010
[10846s] DEBUG: Gutenprint: End initialize page
[10846s] DEBUG: Gutenprint: Interim page settings:
[10846s] DEBUG: Gutenprint: === BEGIN GUTENPRINT SETTINGS ===
[10846s] DEBUG: Gutenprint:     Driver: kodak-1400
[10846s] DEBUG: Gutenprint:     L: 18.179402  T: 72.000000  W: 576.000000  H: 720.000000
[10846s] DEBUG: Gutenprint:     Page: 612.358804x864.000000
[10846s] DEBUG: Gutenprint:     Conversion: traditional
[10846s] DEBUG: Gutenprint:         (PageSize) (2) (String) [w612h864]
[10846s] DEBUG: Gutenprint:         (MediaType) (2) (String) [Glossy]
[10846s] DEBUG: Gutenprint:         (Resolution) (2) (String) [301x301]
[10846s] DEBUG: Gutenprint:         (InkType) (2) (String) [RGB]
[10846s] DEBUG: Gutenprint:         (Laminate) (2) (String) [Coated]
[10846s] DEBUG: Gutenprint:         (PrintingMode) (2) (String) [Color]
[10846s] DEBUG: Gutenprint:         (ColorCorrection) (2) (String) [None]
[10846s] DEBUG: Gutenprint:         (ChannelBitDepth) (2) (String) [8]
[10846s] DEBUG: Gutenprint:         (InputImageType) (2) (String) [RGB]
[10846s] DEBUG: Gutenprint:         (ImageType) (2) (String) [TextGraphics]
[10846s] DEBUG: Gutenprint:         (JobMode) (2) (String) [Job]
[10846s] DEBUG: Gutenprint:         (STPIRawChannels) (2) (Int) [1]
[10846s] DEBUG: Gutenprint:         (PageNumber) (2) (Int) [0]
[10846s] DEBUG: Gutenprint:         (NumCopies) (2) (Int) [1]
[10846s] DEBUG: Gutenprint:         (CUPSShrinkPage) (2) (Int) [1]
[10846s] DEBUG: Gutenprint:         (Borderless) (2) (Bool) [0]
[10846s] DEBUG: Gutenprint:         (NativeCopies) (2) (Bool) [1]
[10846s] DEBUG: Gutenprint:         (LegacyDyesubGamma) (2) (Bool) [0]
[10846s] DEBUG: Gutenprint:         (LinearContrast) (2) (Bool) [0]
[10846s] DEBUG: Gutenprint:         (Collate) (2) (Bool) [0]
[10846s] DEBUG: Gutenprint:         (Brightness) (2) (Double) [1.000000]
[10846s] DEBUG: Gutenprint:         (Contrast) (2) (Double) [1.000000]
[10846s] DEBUG: Gutenprint:         (Saturation) (2) (Double) [1.000000]
[10846s] DEBUG: Gutenprint:         (AppGamma) (2) (Double) [1.000000]
[10846s] DEBUG: Gutenprint: === END GUTENPRINT SETTINGS ===
[10846s] DEBUG: Gutenprint: Page data:
[10846s] DEBUG: Gutenprint:   MediaClass = ""
[10846s] DEBUG: Gutenprint:   MediaColor = ""
[10846s] DEBUG: Gutenprint:   MediaType = "Glossy"
[10846s] DEBUG: Gutenprint:   OutputType = ""
[10846s] DEBUG: Gutenprint:   AdvanceDistance = 0
[10846s] DEBUG: Gutenprint:   AdvanceMedia = 0
[10846s] DEBUG: Gutenprint:   Collate = 0
[10846s] DEBUG: Gutenprint:   CutMedia = 0
[10846s] DEBUG: Gutenprint:   Duplex = 0
[10846s] DEBUG: Gutenprint:   HWResolution = [ 301 301 ]
[10846s] DEBUG: Gutenprint:   ImagingBoundingBox = [ 0 0 612 792 ]
[10846s] DEBUG: Gutenprint:   InsertSheet = 0
[10846s] DEBUG: Gutenprint:   Jog = 0
[10846s] DEBUG: Gutenprint:   LeadingEdge = 0
[10846s] DEBUG: Gutenprint:   Margins = [ 0 0 ]
[10846s] DEBUG: Gutenprint:   ManualFeed = 0
[10846s] DEBUG: Gutenprint:   MediaPosition = 0
[10846s] DEBUG: Gutenprint:   MediaWeight = 0
[10846s] DEBUG: Gutenprint:   MirrorPrint = 0
[10846s] DEBUG: Gutenprint:   NegativePrint = 0
[10846s] DEBUG: Gutenprint:   NumCopies = 1
[10846s] DEBUG: Gutenprint:   Orientation = 0
[10846s] DEBUG: Gutenprint:   OutputFaceUp = 0
[10846s] DEBUG: Gutenprint:   PageSize = [ 612 792 ]
[10846s] DEBUG: Gutenprint:   Separations = 0
[10846s] DEBUG: Gutenprint:   TraySwitch = 0
[10846s] DEBUG: Gutenprint:   Tumble = 0
[10846s] DEBUG: Gutenprint:   cupsWidth = 2558
[10846s] DEBUG: Gutenprint:   cupsHeight = 3311
[10846s] DEBUG: Gutenprint:   cups->width = 2408
[10846s] DEBUG: Gutenprint:   cups->height = 3010
[10846s] DEBUG: Gutenprint:   cups->adjusted_width = 2408
[10846s] DEBUG: Gutenprint:   cups->adjusted_height = 3010
[10846s] DEBUG: Gutenprint:   cupsMediaType = 0
[10846s] DEBUG: Gutenprint:   cupsBitsPerColor = 8
[10846s] DEBUG: Gutenprint:   cupsBitsPerPixel = 24
[10846s] DEBUG: Gutenprint:   cupsBytesPerLine = 7674
[10846s] DEBUG: Gutenprint:   cupsColorOrder = 0
[10846s] DEBUG: Gutenprint:   cupsColorSpace = 1
[10846s] DEBUG: Gutenprint:   cupsCompression = 1
[10846s] DEBUG: Gutenprint:   cupsRowCount = 0
[10846s] DEBUG: Gutenprint:   cupsRowFeed = 0
[10846s] DEBUG: Gutenprint:   cupsRowStep = 0
[10846s] DEBUG: Gutenprint:   shrink page to fit 1
[10846s] DEBUG: Gutenprint: === BEGIN GUTENPRINT SETTINGS ===
[10846s] DEBUG: Gutenprint:     Driver: kodak-1400
[10846s] DEBUG: Gutenprint:     L: 18.179402  T: 72.000000  W: 576.000000  H: 720.000000
[10846s] DEBUG: Gutenprint:     Page: 612.358804x864.000000
[10846s] DEBUG: Gutenprint:     Conversion: traditional
[10846s] DEBUG: Gutenprint:         (PageSize) (2) (String) [w612h864]
[10846s] DEBUG: Gutenprint:         (MediaType) (2) (String) [Glossy]
[10846s] DEBUG: Gutenprint:         (Resolution) (2) (String) [301x301]
[10846s] DEBUG: Gutenprint:         (InkType) (2) (String) [RGB]
[10846s] DEBUG: Gutenprint:         (Laminate) (2) (String) [Coated]
[10846s] DEBUG: Gutenprint:         (PrintingMode) (2) (String) [Color]
[10846s] DEBUG: Gutenprint:         (ColorCorrection) (2) (String) [None]
[10846s] DEBUG: Gutenprint:         (ChannelBitDepth) (2) (String) [8]
[10846s] DEBUG: Gutenprint:         (InputImageType) (2) (String) [RGB]
[10846s] DEBUG: Gutenprint:         (ImageType) (2) (String) [TextGraphics]
[10846s] DEBUG: Gutenprint:         (JobMode) (2) (String) [Job]
[10846s] DEBUG: Gutenprint:         (STPIRawChannels) (2) (Int) [1]
[10846s] DEBUG: Gutenprint:         (PageNumber) (2) (Int) [0]
[10846s] DEBUG: Gutenprint:         (NumCopies) (2) (Int) [1]
[10846s] DEBUG: Gutenprint:         (CUPSShrinkPage) (2) (Int) [1]
[10846s] DEBUG: Gutenprint:         (Borderless) (2) (Bool) [0]
[10846s] DEBUG: Gutenprint:         (NativeCopies) (2) (Bool) [1]
[10846s] DEBUG: Gutenprint:         (LegacyDyesubGamma) (2) (Bool) [0]
[10846s] DEBUG: Gutenprint:         (LinearContrast) (2) (Bool) [0]
[10846s] DEBUG: Gutenprint:         (Collate) (2) (Bool) [0]
[10846s] DEBUG: Gutenprint:         (Brightness) (2) (Double) [1.000000]
[10846s] DEBUG: Gutenprint:         (Contrast) (2) (Double) [1.000000]
[10846s] DEBUG: Gutenprint:         (Saturation) (2) (Double) [1.000000]
[10846s] DEBUG: Gutenprint:         (AppGamma) (2) (Double) [1.000000]
[10846s] DEBUG: Gutenprint: === END GUTENPRINT SETTINGS ===
[10846s] DEBUG: Gutenprint: End page data
[10846s] ERROR: Gutenprint: Image is too wide for the page: left margin is 18.179402, width 576.000000, right edge is 594.179402
[10846s] ERROR: Gutenprint: Print options not verified; cannot print.
[10846s] DEBUG: Gutenprint: Options failed to verify.
[10846s] DEBUG: Gutenprint: Make sure that you are using ESP Ghostscript rather
[10846s] DEBUG: Gutenprint: than GNU or AFPL Ghostscript with CUPS.
[10846s] DEBUG: Gutenprint: If this is not the cause, set LogLevel to debug to identify the problem.
[10846s] DEBUG: Gutenprint: Aborted job
[10846s] DEBUG: Gutenprint: stats 0B, 0.020u, 0.000s, 0.077el
[10846s] DEBUG: Gutenprint: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[10846s] DEBUG: Gutenprint: ============================================================

  if (stp_get_left(v) + stp_get_width(v) > right)
    {
      answer = 0;
      stp_eprintf(v, _("Image is too wide for the page: left margin is %f, width %f, right edge is %f\n"),
		  stp_get_left(v), stp_get_width(v), right);
    }

Doing the math from what's reported in the error it's a perfect match, 
which means somewhere past the sixth decimal place we're off slightly.

 - Solomon
-- 
Solomon Peachy			      pizza at shaftnet dot org (email&xmpp)
                                      @pizza:shaftnet dot org   (matrix)
High Springs, FL                      speachy (libra.chat)

_______________________________________________
Gimp-print-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/gimp-print-devel
signature.asc (application/pgp-signature, 833 B)
-----BEGIN PGP SIGNATURE-----

iQIzBAABCgAdFiEE3H5Sx9DyiyB5hnENrGLLO/XVulEFAmEzo9IACgkQrGLLO/XV
ulE2Kw//eb/P00Rk3G3WO6GKlOfxJTojRYTcLAHh4oF2w7n00ERc8NNX2Wj2Buwh
XV3oHqz+knjFCHXKgITEpJ+MKYrKRbOin6Cc/RtGPbwde+/I7Rb4lbg5Y4Bvw5tR
NiFUOws6422XK2ZXaut52R5YTDoOt3+IPXvW8wRtplI3j8VlsLRwaSnigNS6hZ5V
rLf0Q2bQTSA/thCl9fbgbmkvZbSVVM9vYwvPBJrlcsPoaAK5I5nHdlPSQmGzApkX
saPKasj7uy8QAIk9g1KkDAApe2OQHu2MT9knpE6/6XlMr9CoaR3LUdN6KMJnsyO9
2J9sCv/TAu79CoSDxw/wo3fMYIKFvq7sZDmyowF/rvTEyflLnFirP07oeFa0TC+Y
kasDEh67VkJUo1jT2WSLDue0wEAq2u7vmt1ahFsYVjnQOXEKASXjEJjZrJZk1TnW
V0VI8MdSnFEEP4BcyIHDHL4OT9y1Gz0rGYV2rukaBAh1/CKED53/i4e4ZqWaEKFN
JioCPn/0rvxLMRtFtIlKJgXgkfx1+ozUTXN4v7iLriBZUwoegWyNLjjYEW4P5dkI
ZDv4GDx50q2FNmKb0GCGDcZofj2KLi+EvNx/Uk13iw5nHhXtb98GMCZFSZHkbBdn
8aQsRbVJlNswjBPWH5qT1P7HWWFV8RmJFH+jN5DzSTg6c2biY8s=
=ZmM2
-----END PGP SIGNATURE-----
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.