Receipt photos to PDF
A shoebox of resit becomes one PDF: each receipt on its own page at its own shape, text kept sharp at 2400 px, ready for a claim or the accountant.
🔒 100% client-side · zero server upload
Pages
This list is the page order: drag a row, or use the arrows, to change it.
No photos yet. Add a photo and its page appears here — with the printed size, before anything is built.
Drop on the upper or lower half of a row: the page numbers renumber as the pages move.
The PDF is assembled in this tab. No photo, no page and no filename is sent anywhere — you can pull the network cable out and it still works.
Malaysian rules & edge cases
What a Malaysian printer will actually do with it
A4 is 210 × 297 mm — that is the paper in every office and every RM199 inkjet here, and it is what this tool makes by default. Letter (8.5 × 11 in) is a US size that most Malaysian trays do not hold; it is offered only because some bank forms are printed for it.
- 0 mm margin does not print. Most inkjets cannot put ink on the last 3–5 mm, so a full-bleed page comes out with a white rim or a smeared edge. 10 mm is the safe default.
- Pixels decide the sharpness. 300 dpi on A4 needs 2480 × 3508 px; 150 dpi needs 1240 × 1754 px. A phone photo is usually 3000–4000 px on the long edge, so it prints A4 comfortably. Capping the long edge at 2000 px still gives about 170 dpi — sharp for text, and a third of the file size.
- Why the file is smaller than the photos: each photo is re-encoded on the way in. That is also what removes the GPS tag, the camera model and the timestamp — a photo taken at your shop does not carry your home address into a document you email.
- HEIC is not an image the browser can read. iPhones save HEIC. Convert with the HEIC to JPG tool first; this page tells you so instead of failing silently.
- Portals cap uploads. Bank, SSM and LHDN forms usually take a PDF of a few megabytes and reject a 20 MB phone scan. Capping the long edge is the cheapest fix, and the page tells you the resulting size before you upload.
- One photo, one page — in your order. This is not a layout tool: no collage, no two-up, no rotation of the photo itself. Rotation belongs to the crop tool, and the page orientation here only decides which way the paper is turned.
Before and after
Before
resit-kedai.png (1200×1600) + baju-kurung.jpg (2400×3200) + banner-raya.png (2400×1350) After
resit-kedai-3.pdf — 3 pages, A4 with a 10 mm margin, 4.1 MB How it works
- Add the photos — the order you add them is the order of the pages.
- Pick the page size, margin and photo pixels. The page list shows the printed size of every page before you download.
- Press Run, check the page count, then download the PDF. Nothing was uploaded.
FAQ
Will the small print still be readable?
At the 2400 px default, yes — a receipt photographed at 1200 px wide is embedded at its own size, never upscaled, and the page shows the printed size of every receipt before you download.
Can I combine different shops in one file?
Yes. Add them in the order your claim form wants, and the PDF keeps that order. The download is named after the first receipt with the page count appended, so a January batch and a February batch will not overwrite each other.
Does the PDF keep where the receipt was photographed?
No. Every photo is re-encoded before embedding, so the EXIF block — GPS, phone model, timestamp — is dropped rather than carried into a document you send to an office.