Changes between Initial Version and Version 1 of eCupsScript


Ignore:
Timestamp:
Dec 1, 2006, 1:15:23 AM (18 years ago)
Author:
bart
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • eCupsScript

    v1 v1  
     1== Starting page of the Postscript Printer Driver (PSCRIPT.DRV) replacement ==
     2
     3Source code: in the latest DDK there was the source for the 30.800 PSCRIPT.DRV, looking through the changelogs, it seems that they only have been adding new PPD files, no new functionality.
     4
     5There are 2 main reasons why we want to replace the current postscript driver
     6 1. It has some serious bugs/limitations which prevent it from working properly with CUPS
     7 2. To do the auto configuration we need a way to be sure that the printer printing to CUPS is known to CUPS, having our own printer driver greatly simplifies this task, I'll ellaborate on that in the explanation of the eCupsPort driver internals.
     8
     9=== Bugs/Limitations ===
     10 1. the most important, and luckely most easy to fix bug is the messed up header of the postscript generated by the driver. in the code snippet below you see that the actual postscript marker is below the comment, CUPS expects the postscript marker to be on top to define the stream as postscript. This behaviour is causing that printing on some newer printers directly from OS/2 eComStation fails as well, the printer doesn't recognize the stream as PostScript and therefore ignores it. Some older printer had a 'text mode' fallback where your job was actualy printed as source code, but modern printers don't support this anymore, so after receiving the job they simply give a data error or give up without any feedback.
     11{{{
     12[{
     13%%BeginFeature: Resolution 1200dpi
     14<< /HWResolution [1200 1200] >> setpagedevice
     15%%EndFeature: Resolution
     16} stopped cleartomark
     17[{
     18%%BeginFeature: PageSize A4
     19<< /PageSize [595 842] /ImagingBBox null >> setpagedevice
     20%%EndFeature: PageSize
     21} stopped cleartomark
     22%!PS-Adobe
     23%%Title: Examples.mpb
     24%%Creator: Presentation Manager 2.45
     25%%CreationDate: 12:09  11/19/2006
     26%%DocumentProcSets: PM_1.2
     27%%DocumentSuppliedProcSets: PM_1.2
     28}}}
     29 2. PJL Headers, actualy the same effect as above, PJL comments are inserted into the postscript stream if the driver detects that the printer supports mode switching. Again the Postscript marker is not on top. When using CUPS, this mode switching should be done by a filter, and use the PPD with the printer for CUPS processing.
     30{{{
     31@PJL ENTER LANGUAGE=PS
     32%!PS-Adobe
     33%%Title: Examples.mpb
     34%%Creator: Presentation Manager 2.45
     35%%CreationDate: 12:09  11/19/2006
     36%%DocumentProcSets: PM_1.2
     37%%DocumentSuppliedProcSets: PM_1.2
     38}}}