Batch Resizing and Format Conversion
The workhorse batch job — a whole folder resized and converted at once
In This Lesson
The Most Common Job
"Take these 200 camera JPEGs and give me web-sized versions" is the batch job you'll run more than any other. It combines two operations — resize to a sensible dimension and often convert to a web format at a reasonable quality. Master this one recipe and you've covered most of your real-world batching needs.
Batch Resize in BIMP
In BIMP (yesterday's File → Batch Image Manipulation), add a Resize operation:
- Choose a target — by percentage (e.g. 50%) or by a fixed dimension (e.g. 1600 px on the long edge).
- Keep "maintain aspect ratio" checked so images aren't stretched.
- Add the source files and an output folder, then Apply.
The same by Script-Fu batch on the command line calls gimp-image-scale per file — either route
produces identical results.
Keeping Aspect Ratio
Photos in a batch are rarely all the same shape — portraits and landscapes mixed together. Resizing to a fixed width and height would squash some. The fix is to constrain by a single dimension (the long edge) or a percentage, letting the other dimension follow:
Constrain one dimension to keep every shape correct; fixing both distorts some.
💡 "Long Edge" Is the Safe Choice
Resizing so the longest edge hits a target (say 2048 px) guarantees no image exceeds that size in either direction, regardless of orientation — perfect for galleries and uploads with a max dimension.
Format Conversion
The same batch can change format. Set the output type and every file is converted as it's saved:
| From → To | Why |
|---|---|
| PNG → JPEG | Shrink big screenshots/photos for the web |
| TIFF/RAW export → JPEG | Deliver lightweight versions of heavy masters |
| JPEG → PNG | When you need lossless or transparency downstream |
| Anything → WebP | Smaller files at similar quality for modern web |
You'll dig into which format to pick, and web-specific settings, in tomorrow's web optimization lesson.
Naming the Output
Batch tools let you rename on the way out — add a suffix like _web or _1600,
renumber sequentially, or change the extension. A good pattern keeps the original name and appends the size
(portrait-03_web.jpg) so the output is self-describing and never collides with the source, in
keeping with Monday's naming conventions.
Don't Sacrifice Quality
⚠️ Downscale from the Master, Once
Always batch from your full-size originals, not from already-shrunk copies — re-resizing a small JPEG compounds softness and compression. And don't set JPEG quality too low to save space; 80–90% usually looks great while a harsh setting leaves visible artifacts. One clean downscale from the master beats a chain of re-saves.
Practice Activities
- Long-edge resize. Batch a mixed folder of portraits and landscapes to 1600 px on the long edge and confirm none are distorted.
- Convert format. In the same job, output JPEG at 85% quality and compare file sizes to the originals.
- Suffix naming. Set the output to append
_weband verify names don't collide with the sources.
Summary
✅ Key Takeaways
- Resize-and-convert is the most common batch job — worth mastering.
- Constrain by long edge or percentage to keep every shape correct.
- The same batch can convert format (PNG↔JPEG, WebP, etc.).
- Rename output with a size suffix so it's self-describing and collision-free.
- Batch from full-size masters at 80–90% quality — never re-resize small copies.
Additional Resources
- Previous lesson: Batch Processing Fundamentals
- Next in this module: Batch Watermarking and Effects
- Related: Web Optimization Techniques