Converting PDF Files to BMP Files

Kind of a technical question, but what the heck…

Say I’ve got a big PDF file with 100 pages in it.

I’d like to convert it to 100 little BMP files, each having a unique filename.

I’d like to perform this task from within a C or C++ program, or…

I’d be OK with having a program running on the system that “sees” whan a new PDF shows up, and converts it for me.

I’ll need to run this on a Sun Solaris system.

Shareware would be great, but my client can also afford to pay for an off-the-shelf solution.

Anyone have any idears on how I might do this?

Many thankies!

Yuck. Seems like an awful mess to me. There’s got to be a better way to get wherever you need to go.

I will suggest that you try posting you’re question on Adobe’s Forums. They don’t have a Sun forum for Acrobat, but maybe the Acrobat SDK (software development kit) forum would have an idea.

I’m curious about why you want BMPs and not PNGs or GIFs or some other file that isn’t quite so huge. The lossiness of the compression is really minimal, especially with something like text (which is what I assume 90% of your PDFs have on them).

Thinking further, I think there exist *nix-y utils to convert PostScript files to various image formats, and I think there is also a way to convert PDFs to ps format. So try that little roundabout method.

(Assuming a Solaris is close enough to Linux to run the same software, and that my memory isn’t completely wrong anyway.)

You can do this with GhostScript (http://www.cs.wisc.edu/~ghost). It has bitmap output devices drivers (BMP, PNG, JPG, etc.) and can grok PDF as well as postscript. It’s free, and you should be able to build it for your Solaris system if there isn’t a binary package already available.

Invoke it like:


gs -dNOPAUSE -sDEVICE=bmp256 -sOutputFile='*foo*%03.bmp' *foo*.pdf quit.ps

Where foo is the name of the file. You’ll end up with 100 little files like foo001.bmp, foo002.bmp, foo003.bmp…

I use a program called paperport that can do that for a win pc - not automatically but pretty easy.

if you are interested in how:
1 - open the pdf file
2 - print to paperport (it shows up as a printer)
(paperport opens automatically and shows the pdf file (now in paperport’s format)
3 - go to file>export - select bmp and location of the files

k2dave – Informatik Image Driver does a similar thing, but in .tif format. I’m in the middle of a project converting thousands of PDFs into both single- and multi-page TIFs for OCR scanning.

Maybe I’ve missed some critical point in the OP as to why this isn’t an acceptable method, but why not just take a screen shot of each page (print screen key on the keyboard) and then open MS Paint and hit Ctrl+V to paste the image. There’s your bitmap file, no fuss no muss.

Okay it just occurred to me that you’ll need something to crop the bitmap because the print screen key captures everything on the screen (duh). So use a freebie like FLMask to resize or crop out the unwanted stuff.

A little muss, but still no fuss.

Attrayant, that would not work as you cannot fit the entire page on the screen with the resolution you need.

Along the lines other posters have suggested, what I do is print to fax which generates TIF files which can then be converted to whatever else you want.