I'm in charge of the Ghostscript built-in EPSON page printer driver maintenance that my employer, AVASYS Corporation, does for EPSON. I'd like to add support for yet another printer. However, unlike we have been doing so far (hard-code printer specifics via a new device), this time we want to add a more generic device that takes the printer specifics via command-line options. The attached patch adds two devices, eplcolor for colour laser printers and eplmono for monochrome printers, as well as several additional media types that these devices may support. The existing devices are kept for backwards compatibility. We would much appreciate it if this patch made it into the next version of Ghostscript. If at all possible, could you also include it in 8.64 in case there is a bugfix release for that version? Thanks in advance,
Created attachment 5167 [details] eplaser-add_device_support_and_mediatype.diff
Assign to Ralph for patch review. To me, it looks OK at first blush.
I just noticed the freeze announcement on the mailing list. I also noticed that this patch has not been committed yet. Next, I realised that I probably should have submitted this as P2. Increasing priority in the hope that this can make it in before release. It's bit urgent for us as we would like to get this into the upcoming Fedora and Ubuntu releases as well.
If Ralph concurs, I have no objection to this going in.
I have tried it by applying the patch to Ghostscript 8.64. It works fine when the input file is PostScript. It does not work at all if the input file is PDF, it even breaks all other "eplXXXX", "alcXXXX", and "lpXXXX" output devices for PDF input. In all cases I get an error message like this: till@till-laptop:~/ghostscript/gpl/gs-test$ gs -sDEVICE=alc2000 -sOutputFile=x ../testfiles/A3landscape.ps GPL Ghostscript 8.64 (2009-02-03) Copyright (C) 2009 Artifex Software, Inc. All rights reserved. This software comes with NO WARRANTY: see the file PUBLIC for details. >>showpage, press <return> to continue<< GS>quit till@till-laptop:~/ghostscript/gpl/gs-test$ gs -sDEVICE=alc2000 -sOutputFile=x ../testfiles/A3landscape.pdf GPL Ghostscript 8.64 (2009-02-03) Copyright (C) 2009 Artifex Software, Inc. All rights reserved. This software comes with NO WARRANTY: see the file PUBLIC for details. Processing pages 1 through 1. Page 1 >>showpage, press <return> to continue<< Error: /rangecheck in .installpagedevice Operand stack: --nostringval-- false --nostringval-- --dict:60/71(ro)(L)-- --nostringval-- Execution stack: %interp_exit .runexec2 --nostringval-- --nostringval-- --nostringval-- 2 %stopped_push --nostringval-- --nostringval-- --nostringval-- false 1 %stopped_push 1862 1 3 %oparray_pop 1861 1 3 %oparray_pop 1845 1 3 %oparray_pop --nostringval-- --nostringval-- 2 1 1 --nostringval-- %for_pos_int_continue --nostringval-- 1791 3 7 %oparray_pop --nostringval-- 1775 3 7 %oparray_pop --nostringval-- --nostringval-- Dictionary stack: --dict:1146/1684(ro)(G)-- --dict:1/20(G)-- --dict:74/200(L)-- --dict:74/200(L)-- --dict:106/127(ro)(G)-- --dict:278/300(ro)(G)-- --dict:21/25(L)-- Current allocation mode is local Last OS error: 2 GPL Ghostscript 8.64: Unrecoverable error, exit code 1 till@till-laptop:~/ghostscript/gpl/gs-test$ The test files are attached. Ishii-san, please fix the patch ASAP, and test it with PDF files, preferably also with an actual printer, as the driver and already existing drivers must work also in the PDF printing workflow.
Created attachment 5241 [details] A3landscape.pdf With this PDF input file the patched Epson driver does not work
Created attachment 5242 [details] A3landscape.ps With this PostScript input file the patched Epson driver works.
Created attachment 5243 [details] eplaser-add_device_support_and_mediatype.diff Attached is the fixed patch for the Epson driver. This patch works with PDF input.
Thanks for the additional cleanup. Please commit.
Uploaded as SVN revision 9893. Thank you for the patch.