Example file to test.

** Attachment added: "sample2.djvu"
   
https://bugs.launchpad.net/ubuntu/+source/cups-filters/+bug/1920730/+attachment/5497392/+files/sample2.djvu

-- 
You received this bug notification because you are a member of Desktop
Packages, which is subscribed to cups-filters in Ubuntu.
https://bugs.launchpad.net/bugs/1920730

Title:
  gstoraster: Ghostscript runs to long while converting djvu files to
  Xerox`s 3210  format

Status in cups-filters package in Ubuntu:
  Incomplete

Bug description:
  My OS:
  Description:  Ubuntu 20.04.2 LTS
  Release:      20.04

  Package version: cups-filters version 1.27.4-1

  When I try to print djvu files on my Xerox WorkCentre 3210 gstoraster filter, 
which calls ghostscript inside runs to long while converting djvu files to 
Xerox`s 3210 format.
  E.x.: For 155 pages of djvu files, it runs more then 15 minutes.

  I found a solution by adding -dDEVICEWIDTHPOINTS -dDEVICEHEIGHTPOINTS params 
to ghostscript command inside gstoraster filter. Now the time of converting the 
same file is about 30 seconds.
  I`ve made patch which solves this problem.

  --- a/filter/gstoraster.c
  +++ b/filter/gstoraster.c
  @@ -733,8 +733,17 @@
       char output[31] = "";
       int pagecount;
       size_t bytes;
  -    snprintf(gscommand, 65536, "%s -q -dNOPAUSE -dBATCH -sDEVICE=bbox %s 
2>&1 | grep -c HiResBoundingBox",
  -          CUPS_GHOSTSCRIPT, filename);
  +    // Ghostscript runs to long while converting djvu files to Xerox`s 3210 
format
  +    // Using -dDEVICEWIDTHPOINTS -dDEVICEHEIGHTPOINTS params solves the 
problem
  +    if (ppd) {
  +      cupsRasterInterpretPPD(&h,ppd,num_options,options,0);
  +      snprintf(gscommand, 65536, "%s -q -dNOPAUSE -dBATCH 
-dDEVICEWIDTHPOINTS=%d -dDEVICEHEIGHTPOINTS=%d -sDEVICE=bbox %s 2>&1 | grep -c 
HiResBoundingBox",
  +         CUPS_GHOSTSCRIPT, h.PageSize[0], h.PageSize[1], filename);
  +    }
  +    else {
  +      snprintf(gscommand, 65536, "%s -q -dNOPAUSE -dBATCH -sDEVICE=bbox %s 
2>&1 | grep -c HiResBoundingBox",
  +         CUPS_GHOSTSCRIPT, filename);
  +    }
   
       FILE *pd = popen(gscommand, "r");
       if (!pd) {

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/cups-filters/+bug/1920730/+subscriptions

-- 
Mailing list: https://launchpad.net/~desktop-packages
Post to     : desktop-packages@lists.launchpad.net
Unsubscribe : https://launchpad.net/~desktop-packages
More help   : https://help.launchpad.net/ListHelp

Reply via email to