Utility to generate images containing a collage of other images
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.



Open source Java software to generate a collage of images.

Copyright © 2016 Rob Schlüter

Licensed under the MIT License. For details see the included LICENSE file.

The source code of this project is hosted on GitHub: https://github.com/kwebble/imagewall

You can contact me through the contact form on my website: http://kwebble.com/about


This software can generate images containing a collage of other images like this:

Kwebble Radio header

This image is taken from Kwebble Radio, and it was for this site I created the software.

To create a collage you provide a collection of images, run the software and after some time a collage is created.


  1. This is Java software which means you must have a Java runtime installed on the computer.

  2. If you haven't downloaded the software yet do that now. You need the imagewall-full.jar file.

  3. Open a window with a command prompt and execute the software by running the command. The syntax is:

    java -jar imagewall-full [options...] <path to image folder>

    Where the options are:

    Option Description Default value
    -w: Width of the generated image in pixels. 1000
    -h: Height of the generated image in pixels. 250
    --format: Use a predefined image size (overrides -w and -h options) possible values: "facebook_header" and "twitter_header". none
    -c: Maximum number of images to include in the generated image. All found images
    -min: Minimum width in pixels the source images are scaled to. 50
    -max: Maximum width in pixels the source images are scaled to. 100
    -background Name of the file to use as background image.
    -output: Name of the generated file. imagewall.jpg
  4. the resulting collage is saved as a JPEG file.


###Exception in thread "main" java.lang.OutOfMemoryError: Java heap space This error means the program needs more memory to run. It can occur when creating a large image or process large input files.

You can solve this with the Java option -Xmx, which sets the amount of memory the software may use, for example:

java -Xmx512m -jar imagewall-full [options...] <path to image folder>

sets the memory limit to 512 MB.

Building from source

The source code of the software is available on GitHub: https://github.com/kwebble/imagewall

The build of the software uses Maven, so install that first.

Perform the build with the command:

mvn package

When successful the result is available in the target folder, 2 JAR files: imagewall.jar and imagewall-full.jar.

imagewall.jar contains only the specific code for this project. imagewall-full.jar is a executable JAR file with all required code included to run from the command line.


Licenses of elements used in this software are stored in the included ACKNOWLEDGEMENTS file.