13
In Thumbnailator, one can add a text caption to an existing image by using the Caption image filter:
// Image to add a text caption to.
BufferedImage originalImage = ...;
// Set up the caption properties
String caption = "Hello World";
Font font = new Font("Monospaced", Font.PLAIN, 14);
Color c = Color.black;
Position position = Positions.CENTER;
int insetPixels = 0;
// Apply caption to the image
Caption filter = new Caption(caption, font, c, position, insetPixels);
BufferedImage captionedImage = filter.apply(originalImage);
In the above code, the text Hello World will be drawn on centered on the originalImage with a Monospaced font, with a black foreground color, at 14 pt.
Alternatively, if a watermark image is to be applied to an existing image, one can use the Watermark image filter:
BufferedImage originalImage = ...;
BufferedImage watermarkImage = ...;
Watermark filter = new Watermark(Positions.CENTER, watermarkImage, 0.5f);
BufferedImage watermarkedImage = filter.apply(originalImage);
The above code will superimpose the watermarkImage on top of the originalImage, centered with an opacity of 50%.
Thumbnailator will run on plain old Java SE -- one does not have to install any third party libraries. (However, using the Sun Java runtime is required.)
Full disclosure: I am the developer for Thumbnailator.