33

How do I convert a multi-page PDF file to PNG files, and automatically save one PNG file per page of the PDF document (for Windows 7)?

I have tried virtual printers (CutePDF, Bullzip PDF Printer) and image editing software (Irfanview, Photoshop) to convert PDF files to PNG but I can't find a way to make them save one PNG file per page of a PDF document.

20

Use Ghostscript

-sOutputFile=filename This is a general option telling Ghostscript what to name the output. It can either be a single filename 'tiger.png' or a template 'figure-%03d.jpg' where the %03d is replaced by the page number.

You may find it convenient to use GhostView, the GUI front end.

| improve this answer | |
  • 5
    I experimented on a couple of options for GhostView and came to this group of options to automatically convert the PDF to PNGs without user prompts: -dBATCH -dNOPAUSE -sDEVICE=png16m -r96 -sOutputFile="C:\directory_Output\%03d.png" "C:\directory_Input\pdfname.pdf" Am I doing it right? I also would like to know what DPI I should set it to (I set it to 96 in this case) to have the same resolution as the source PDF. (The PDF files I am converting contains scanned images of a book or magazine, and does not have OCR text/information.) – galacticninja Feb 11 '11 at 7:21
  • If the source DPI is 96 and the image is likely to be mostly viewed on screen, 96 is a good choice for the output DPI, since that is the default display-DPI for MS Windows (though a few will set their display-DPI to 120). – RedGrittyBrick Feb 11 '11 at 9:54
27

Using ImageMagick (you'll need Ghostscript installed as well), the command:

convert -density 300 filename.pdf filename.png

will result in a series of files filename-0.png, filename-1.png, filename-2.png, one for each of the pages of the PDF. You'll want to play around with the density setting to get a resolution you like.

You may need to give the full path to convert.exe on Windows; I've only ever done this on Linux, but it should work for Windows too.

| improve this answer | |
  • I've been trying the Ghostscript method in the other answer above, but would now like to try this method you suggested. I'd like to ask if the -density 300 argument means that the DPI setting is 300, or does it mean another thing? – galacticninja Aug 18 '11 at 6:58
  • Yes, see here. – frabjous Aug 18 '11 at 13:36
  • 3
    If you only want one page, follow the PDF file name with the page number in square brackets: filename.pdf[0] The page number is 0-based, so 0 is first page, 1 is second page, etc. stackoverflow.com/a/12614851/215168 – Abe Voelker Jul 28 '14 at 19:51
  • Just a note: ImageMagick's convert does use Ghostscript when rendering .pdfs, see stackoverflow.com/questions/14705727/… – sdaau Jan 26 '15 at 23:00
  • for this to work gs has to call the ghostscript binary (I had gs aliased to git status) – duhaime Nov 9 '18 at 11:46
2

If you prefer not to install any software, you can use this online tool:

convert.town/pdf-to-png

The conversion is done inside your browser. It will produce one PNG file for each PDF page.

| improve this answer | |
  • Works very well, alas the images are only 75 DPI, which is not enough for print output. – ƘɌỈSƬƠƑ Oct 6 '15 at 10:42
2

You can use PDF-XChange. It can export any pages you want to the expected format. Not only PNGs but many other formats are supported too

Export images dialog

Export menu

| improve this answer | |
1

This is an example with GS with the CropBox option:

"c:\Program Files\gs\gs9.10\bin\gswin64.exe" -dBATCH -dNOPAUSE -sDEVICE=pnggray -r300 -dUseCropBox -sOutputFile="path_to_png_files\pdffilename-%03d.png" "path_to_pdf_file\pdffilename.pdf"

The path to GS should be adjusted based on your installation. Also, the DEVICE parameter could be changed to a color device if required. Compared to convert, GS seems to run much faster, and it is more suitable for big batches of conversion.

| improve this answer | |
  • If I'm not cropping any part of the original PDF file or converted PNG images, do I still need to use 'CropBox'? If yes, how does it help with the conversion process? – galacticninja Jan 27 '15 at 3:35
  • The use of -dUseCropBox is not to perform any cropping. Instead, it forces that GS reads the CropBox info from the input PDF. This is necessary to have a robust conversion. – imriss Jan 27 '15 at 14:06
0

Another software to do the conversion is PDFCreator. It'll create a new printer in your system so you can actually convert from any formats to images, not only PDF files

  • Convert your documents to PDF, JPG, PNG, TIF and more
  • Merge multiple documents to one file
  • Profiles make frequently used settings available with one click
  • Use automatic saving to have a fully automated PDF printer
  • We take care of the complexity and make converting PDFs simple for you

More importantly it's also open-sourced

Just print the document, select the PDFCreator and choose the output as PNG (or TIFF, JPG, whatever...) and you're done

PDFCreator screenshot

| improve this answer | |

Not the answer you're looking for? Browse other questions tagged or ask your own question.