PNG to PDF logoPNG to PDF

Convert Photos to PDF in Bulk: One File or Many Files

By the PNG to PDF team ·

A folder of photos becoming a row of separate PDF files

To convert photos to PDF in bulk, first decide whether you want one merged PDF or one PDF per photo, then name the photos so they sort in the order you need and run them through a tool that takes a list. Merged files suit reading in sequence. Separate files suit photos that go to different places.

Convert photos to PDF: one file or many

Pick the output shape by what happens to the file next.

You need Choose
A document that is read page by page One merged PDF
Each photo attached to a different record or form One PDF per photo
To send a set but let the recipient open any one A ZIP of separate PDFs

The size does not change much between the two shapes: a test on 2026-10-24 turned 30 generated JPG files totalling 457.9 KB into one 472.9 KB PDF, so the overhead is about half a kilobyte per photo. Email limits count the total either way; Gmail’s help gives 25 MB across all attachments in a message for personal accounts.

Name the photos so the order holds

Tools that take a list use the order of the list, and a folder listing sorts names as text. Rename the photos with leading zeros, such as 001.jpg, 002.jpg and 010.jpg, so 10 does not sort before 2. Check rotation too: a photo from a phone can carry a rotation tag that some tools ignore, which photo to PDF shows with a test. For merged output, the order rules of each tool are in combine images into PDF.

A tested batch script for photos to PDF

This Python script makes one PDF per JPG in a folder and zips them. It ran on 2026-10-24 with img2pdf 0.6.3 on three sample photos and produced 01.pdf, 02.pdf and 03.pdf plus a ZIP with the same three entries.

import glob, os, zipfile
import img2pdf

os.makedirs("out", exist_ok=True)
for f in sorted(glob.glob("photos/*.jpg")):
    name = os.path.splitext(os.path.basename(f))[0] + ".pdf"
    with open(os.path.join("out", name), "wb") as o:
        o.write(img2pdf.convert(f))

with zipfile.ZipFile("photos-pdf.zip", "w", zipfile.ZIP_DEFLATED) as z:
    for n in sorted(os.listdir("out")):
        z.write(os.path.join("out", n), n)

For one merged PDF, pass the whole sorted list to a single img2pdf.convert call, as covered in convert JPG to PDF with a tool and convert multiple JPG to PDF.

Convert photos to PDF without code

If you prefer a browser tool, the PNG to PDF Chrome extension processes files inside the extension on your computer and accepts PNG, JPG and HEIC. Its site demo shows a choice between One PDF and a ZIP archive, with a download button for each PDF and one for all. The site does not publish file limits or say how files in the ZIP are named, so try a small batch. If your photos are iPhone HEIC files, HEIC to PDF lists what each system needs.

FAQ

Is it better to convert photos to one PDF or several?

One PDF is better for reading in order. Several PDFs are better when each photo goes somewhere different.

How many photos can I convert at once?

It depends on the tool and your memory. The site of the Chrome extension above publishes no limit, and the script above handled 30 test photos in 0.29 seconds.

Does a bulk conversion lower the quality?

Not if the tool embeds JPEG data as it is. Compare one PDF with the original photo at 100% zoom.