[Open Source] A Dedicated Java Server-Side Image Composition Tool: Simple, Practical, and Powerful
![[Open Source] A Dedicated Java Server-Side Image Composition Tool: Simple, Practical, and Powerful](https://yy123.ink/api/img/1782607507343-up70x2.jpg)
1. Project Overview
ImageCombiner
ImageCombiner is a tool specifically designed for image composition on Java servers. It avoids unnecessary complexity and focuses on simplicity and practicality. Designed around real-world business scenarios, it provides straightforward APIs that allow image merging with just a few lines of code (it can also be used to create watermarks). It supports three types of elements: images, text, and rectangles. Features include positioning, scaling, rotation, rounded corners, opacity, colors, fonts, font sizes, strikethrough, centered drawing, automatic text wrapping, and more. These features are sufficient to cover everyday image composition requirements.
2. Open Source License
Licensed under MIT
3. Screenshots
Let's Take a Look at the Results First

Basic Feature Showcase (Explore More Effects on Your Own)

4. Feature Overview
ImageCombiner is a tool specifically designed for image composition. It keeps things simple and practical without unnecessary complexity, while still offering powerful capabilities.
Project background
Recently, our company has been working on quite a few marketing and promotional projects, which inevitably involve creating various marketing images. Image composition itself is not particularly advanced technology, but using low-level APIs to accomplish it can be quite tedious. So I took some time to wrap everything into a small utility. The original intention was to improve productivity. Later, I found it worked really well, so I decided to open-source it. I spent an entire day reorganizing the code. This is my first open-source project in ten years of professional experience (finally breaking my zero-project record, haha!). I hope it can help anyone who needs it!
ImageCombiner is a tool specifically designed for image composition on Java servers. It avoids unnecessary complexity and focuses on simplicity and practicality. Designed around real-world business scenarios, it provides straightforward APIs that allow image merging with just a few lines of code (it can also be used to create watermarks). It supports three types of elements: images, text, and rectangles. Features include positioning, scaling, rotation, rounded corners, opacity, colors, fonts, font sizes, strikethrough, centered drawing, automatic text wrapping, and more. These features are sufficient to cover everyday image composition requirements.
See the README.md documentation for details
5. Tech Stack
UML

How to Use ImageCombiner
ImageCombiner is extremely easy to use. You only need one main class. Simply create a new ImageCombiner object, specify the background image and output format, then add various elements and configure their positions, sizes, and effects (such as rounded corners, colors, opacity, etc.). Finally, call the combine() method. The combine() method directly returns a BufferedImage object. You can also call getCombinedImageStream() to obtain an input stream for subsequent operations such as uploading to OSS, or use the save() method to save the image locally, which is especially convenient during debugging.
Version Requirements
The project does not depend on any frameworks and is built entirely on the JDK itself. There are no unnecessary bells and whistles, and its performance is quite good.
See the README.md documentation for details