Есть много способов объединить 2 изображения в JSP. Вы можете использовать CSS или JavaScript, чтобы наложить 2 изображения. Тем не менее, я предполагаю, что ваша цель - защитить изображение. Тогда вы не хотите делать это в браузере, потому что оригинальное изображение все еще выставлено.
Вам нужно написать фильтр водяных знаков, чтобы все ваши изображения были отмечены этим PNG. Многие программные пакеты для фотогалереи поставляются с таким фильтром.
Вот фрагмент кода для добавления водяного знака на изображение,
public static BufferedImage watermark(BufferedImage source, BufferedImage watermarkImage, Point position,
float transparency) {
if (source == null)
return null;
if (watermarkImage == null || position == null)
return source;
Graphics2D g2d = (Graphics2D) source.getGraphics();
AlphaComposite alpha = AlphaComposite.getInstance(AlphaComposite.SRC_OVER, transparency);
g2d.setComposite(alpha);
g2d.setRenderingHint(RenderingHints.KEY_TEXT_ANTIALIASING, RenderingHints.VALUE_TEXT_ANTIALIAS_ON);
g2d.drawImage(watermarkImage, position.x, position.y, watermarkImage.getWidth(), watermarkImage.getHeight(),
null);
g2d.dispose();
return source;
}