Split image to multiple pages

If you prefer to get it done online, I may suggest this site - http://rasterbator.net/.

Click in Create Poster and upload your image. Select the page size options, Effect options (I used to select none) and keep clicking continue until you reach the download page. PDF file will automatically download and you can open using evince or any other PDF program that you may have and print them out


ImageMagick does this pretty well, by easily splitting an image into equal-sized tiles.

First make sure your image is sized properly so that, after it is split into equal sized tiles, each tile is the size of the paper you are printing to (otherwise you'll be doing a lot of trimming.)

For example, pad your image with white pixels. In the 80x40cm case, your image should be padded to 3x29.7=89.1cm width (three A4 lengths) and 2x21=42cm height (2 A4 widths.)

Suppose that's myimage.jpg, and it's going to be 3 pages across and 2 pages down to print. And suppose it's 300dpi, so the total image is 10523x4960 pixels.

Then you can pad and crop in one go:

$ convert myimage.jpg -extent 10523x4960 -crop 3x2@ +repage mytiles.jpg

(For ImageMagick 7 I believe the command is "magick" rather than "convert")

The "-extent 10523x4960" command changes the "border" size of the original image to include the padding (with white, because we didn't set any special background first.) The "-crop 3x2@ +repage" does the tiling (note the "@" symbol!)

If you want the padding spaced equally on both sides add "-gravity center" before the "-extent".

ImageMagick can handle all kinds of image formats, including straight from pdf to pdf (though you may have to fiddle with the dpi options.)


The first thing to try would be to look at the printer preferences for your printer, and see if it has a feature to split images for you like that. If the printer driver allows that, that's probably the easiest way to do it.

The next thing to try would be to print to PDF, and have Adobe Reader split it across pages -- assuming you have a print-to-PDF printer driver and have Adobe Reader install.

Finally, those solutions don't work, and this is something you'll do frequently, you might create a script for the task.

One sneaky way to script the task would be to create a spreadsheet with a bunch of text expressions that generate HTML or CSS to show only selected portions of your image, then view each chunk of generated in a web browser, and use the browser's print command to print the selected portion of the image. The Stack Overflow question "How can I display just a portion of an image in HTML/CSS?" offers ways to clip an image.