PDA

Click to See Complete Forum and Search --> : creating a printer driver


OmegaZero
May 18th, 2001, 01:46 PM
Does anybody know how to create a printer driver? I want to make a printer driver that will print a document into a PDF format but I would be gald enough if I could just learn how to make a print driver in the first place. Also, if anybody knows how to create a .jpg print driver, that would be helpful too (i think that is easier to create than a pdf driver...but dunno for sure.)

Thanks!

jim mcnamara
May 18th, 2001, 04:05 PM
Jeez.

If you know DOS interrupts, and a lot of low-level stuff like IOCTL you can start to learn to mess with DOS drivers. You need to know a low-level language really well. (MASM, A86, or Turbo C.)

Windows drivers are a step up from DOS.... Start by taking a look at 'Programming the MicroSoft Windows Driver Model' - by Walter Oney. You can find one to browse at places like Barnes & Noble or BookStar. If you're turned on buy it. We need people who can write Windows drivers. (MASM32 or C++ or C)

On the other hand, after looking at this book you may see why people are willing to buy Distiller and Acrobat. Plus, you can print pdf files using the .ocx that comes with Acrobat, albeit with some difficulty.

billfaceuk
May 19th, 2001, 04:20 AM
rather than writing a new thread, I was interested if anyone could help me in the right direction with this:

I want to intercept all printing jobs and add an extra line of text at the bottom of the page.

parksie
May 19th, 2001, 04:42 AM
OmegaZero, you can make PDF files by installing a PostScript printer driver (get one from Adobe's site) and GhostScript (no idea, do a search ;)). Since PDF is basically compressed PostScript, GhostScript can convert the two.

HarryW
May 19th, 2001, 04:59 AM
Since this thread has already gone off-topic, I'd just like to say:

Hey Jim, not a Diablo fan by any chance?

jim mcnamara
May 19th, 2001, 06:49 AM
Harry: Yes, but partly in self-defense...

Parksie: Ghostscript is GNU. My shop runs Xerox 4850 color lasers (50ppm), print 1M+ pages per month. We tried Ghostscript. Not robust, but maybe for the casual user it's ok. Dunno. (Pardon my 'murcanizations)

jim mcnamara
May 19th, 2001, 06:57 AM
Oh. Forgot.

Bill: There are two types of code that you are confusing- monitors which intercept device traffic and display it, and drivers which send stuff to & from devices.

If you want something to show up in a device's datastream, you have to be either the driver or the sender ( or somebody else in the protocol stack). You can't be on the side watching. Drivers acquire process status during use so they can know stuff about what proc is sending them data. They live in system space as opposed to process space. Aren't you glad you asked?:D

parksie
May 19th, 2001, 08:09 AM
Originally posted by jim mcnamara
Parksie: Ghostscript is GNU. My shop runs Xerox 4850 color lasers (50ppm), print 1M+ pages per month. We tried Ghostscript. Not robust, but maybe for the casual user it's ok. Dunno. (Pardon my 'murcanizations) Ooohh...nice :) I just took a look at my setup and I'm using RedMon, which is a redirection printer port that sends the postscript straight into GS so you only get PDF output without having to specifically convert. So far the fonts seem to work, but I'm using the ATM Type 1 ones :)

I agree, it's not particularly stable, and has crashed quite a few times on me :( Oh well, it can only get better :) I like the look of these printers that can take PDFs straight off. Do your Xerox ones do this?

billfaceuk
May 20th, 2001, 04:13 AM
Originally posted by jim mcnamara
Aren't you glad you asked?:D Very

jim mcnamara
May 21st, 2001, 05:46 PM
Parksie: XEROX 4890, 4850, & C92 all use pdf's for background forms.
In other words, you specify a background (like a form your electric bill is printed on), then you feed the printer just data (text, font type & position on the page) and it combines the two.
:D

bill: :D

parksie
May 22nd, 2001, 12:12 PM
Nice...very nice... :) So you can do something like download the background PDF and then just send the data on its own and it prints it really quickly without having to reparse all the PostScript?