[lsb-discuss] Questions on standardizing "IJS"
till.kamppeter at gmail.com
Fri Aug 4 02:38:32 PDT 2006
Banginwar, Rajesh wrote:
>>If you don't want to pull in ghostscript I think you need to find a way
>>tell the printing system via the PPD file "use some magic to print this
>>file to this IJS interface" without explicitly mentioning ghostscript.
> No, that wasn't my intention here. If IJS can only be invoked through GS
> today, then I guess we will need that. There was some comment earlier
> that IJS can be used without GS which is what triggered my comment.
Currently, GhostScript is the only implementation of an IJS client. When
in the future for example a PDF printing workflow is implemented, there
will be a PDF renderer with IJS as output interface. For a more
lightweight printing workflow one could also imagine to have an IJS
client in a graphics output library like Cairo.
As LSB is based on existing implementations, we will have to test the
GhostScript-based IJS implementation. So the test program can contain an
IJS server which makes use of all elements of the IJS protocol but
"prints" into a logfile which the main test script can investigate. In
addition, an appropriate PPD file and a PostScript test document would
For opvp the opvpnull driver from the
http://opfc.sourceforge.jp/index.html.en site can be used, as it prints
into a logfile.
> For IJS (or anything else around printer driver side) to be useful, we
> will need to make sure the rest of the things for that particular
> printing workflow are also specified in LSB.
So we will need to specify which standard printing tools/filters (like
GhostScript, foomatic-rip, ...) are there and which version of them.
For GhostScript we will not need to test the internals, but more the
version, the presence of certain output devices, and passing certain
test files through it.
Perhaps we need also do something about allowed PPD file types, as only
the PPDs tell how the driver is invoked:
- PostScript printer (no filter)
- Foomatic (using foomatic-rip)
- Others with "*cupsFilter:" line
as they have different printing workflows and the local printing system
needs to know what to do, especially also Solaris LP or LPD.
More information about the lsb-discuss