Re: Corel Printing API



"Sarel J. Botha" <sjb@dundee.lia.net> writes:

> On Wed, Mar 01, 2000 at 01:30:30PM -0500, Havoc Pennington wrote:
> > The library is free, the drivers are not.
> 
> yuck

Not really.  The HPDJ672C driver that I tried from ESP Print Pro was
junk anyway.

CUPS is more of a print-queue replacement, with a reasonably
well-defined pathway to insert drivers into.  There's already one
which will use GS for your printers.  It doesn't care much about how
you generate print jobs.  Since it is an IPP implementation, it offers
control over things like which paper tray to use, turning on duplex,
etc.

The Corel API also doesn't seem to care much about creating print
jobs.  It says it's trying to insulate application writers from
different print backends like CUPS, lpd, etc, while providing access
to the same things that CUPS provides access to.  (Both of which pull
the info from the PPD file for PS printers, so there's all sorts of
stuff you can just drop in and go with).  I don't think it's something
printer manufacters would pop drivers into.  Take a look at
http://opensource.corel.com/APSOverview.html .

So, if I understand it, it would be something like:

Gnome-print creates print job (assume PS for now)

Gnome-print calls Corel APS or CUPS to query printers and capabilities
and puts up a print dialog like you see on Windows

Gnome-print uses APS or CUPS to use PPD stuff to turn on duplexing and
envelope-stuffing and ships the print job out.

If we're using APS:

* APS ships it to your local queuing system

* Local queuing system sends it to the printer however it does so.
  Maybe GS in a print filter, maybe pnmtoppa with PQD, whatever.

If we're using CUPS:

* CUPS looks up to see if the printer needs to do any conversions
  before writing it out

* If so, CUPS can do rasterizing, call vendor-supplied conversion
  tools, etc.



-- 
Alan Shutko <ats@acm.org> - In a variety of flavors!
254 days, 20 hours, 9 minutes, 38 seconds till we run away.
Matrimony is the root of all evil.



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]