[openbeos] Re: PDF Direct Print

  • From: Philippe Houdoin <philippe.houdoin@xxxxxxx>
  • To: openbeos@xxxxxxxxxxxxx
  • Date: Fri, 16 Sep 2005 11:05:53 +0200

Hi Mat,

> We have a canon commercial copier at work, which accept pdf files from it's
> web
> interface and interpret them fast. But on windows system acrobat loads the
> pdf
> and when it prints draws them to the windows printer api; then the printer
> driver composes a postscript job; and that has to intepreted and drawn by the
> printer.
>
> It might be helpful for our print architecture and bepdf to be able to send a
> pdf file, or a postscript file. And I know one of the major interpreter
> companies (EFI I think) is developing a XAML on printer interpreter.
>
> So essentially it would be nice to have a printer driver where you could just
> send an existing or composed PS / PDF / XAML file.

Well, the purpose of a printing architecture is to separate applications from
printers language, using a more abstract graphics engine (BView's drawing in
our case). So, it's not thru an printer driver that such feature could be
supported but, more simple, by using *only* the printing transport add-ons to
send your file to printer.

And, in fact, I've wrote a transport add-ons testing tool that should do what
you're looking after, located under trunk/src/tests/add-ons/print/transports:

http://svn.berlios.de/viewcvs/haiku/haiku/trunk/src/tests/add-ons/print/transports/

It's a little bit rought ATM, as code assume that you've a "test" printing
spooler on which the loaded transport add-on will find his specific settings
(if any). I may removed this hack in the future and move to use system's
default printer, thought.

To try this, build the tool by jaming it from the source directory.
This should generate in trunk/tests/add-ons/print/transports a binary called
"print_transport_loader".

To use it:

$ print_transport_loader "USB Port" yourPDFfile.pdf

Assuming your PDF aware printer is reachable thru USB cable...
Replace "USB\ Port" by LPR, IPP, HP\ JetDirect based on your transport media for
your case. Don't forget to setup a test printer using the same transport so when
 the test program load the same add-on, this later would find valid transport
settings...

Tell me how it goes.

- Philippe Houdoin

Other related posts: