Java Image Watermarking
Code
Import java. awt. font; import java. awt. graphics; import java. awt. image; import java. awt. image. bufferedImage; import java. io. file; import java. io. fileOutputStream; import com.sun.image.codec.jpeg. export codec; import com.sun.image.codec.jpeg. export imageencoder; import javax. imageio. imageIO; public class WaterMark {public static void pressImage (String dst, String src, int x, int y) {try {File f = new File (src); Image img = ImageIO. read (f); int w = img. getWidth (null); int h = img. getHeight (null); BufferedImage bimg = new BufferedImage (w, h, BufferedImage. TYPE_INT_RGB); Graphics g = bimg. getGraphics (); g. drawImage (img, 0, 0, w, h, null); File f1 = new File (dst); Image img1 = ImageIO. read (f1); int w1 = img1.getWidth (null); int h1 = img1.getHeight (null); g. drawImage (img1, w-w1-x, h-h1-y, w1, h1, null); g. dispose (); FileOutputStream out = new FileOutputStream (dst); required imageencoder encoder = required codec. createJPEGEncoder (out); encoder. encode (bimg); out. close ();} catch (Exception e) {e. printStackTrace () ;}} public static void pressText (String pressText, String targetImg, String fontName, int fontStyle, int color, int fontSize, int x, int y) {try {File f = new File (targetImg); Image img = ImageIO. read (f); int w = img. getWidth (null); int h = img. getHeight (null); BufferedImage bimg = new BufferedImage (w, h, BufferedImage. TYPE_INT_RGB); Graphics g = bimg. getGraphics (); g. drawImage (img, 0, 0, w, h, null); g. setFont (new Font (fontName, fontStyle, fontSize); g. drawString (pressText, w-fontSize-x, h-fontSize/2-y); g. dispose (); FileOutputStream out = new FileOutputStream (targetImg); required imageencoder encoder = required codec. createJPEGEncoder (out); encoder. encode (bimg); out. close ();} catch (Exception e) {e. printStackTrace () ;}} public static void main (String [] args) {pressImage ("1.jpg"," 2.jpg", 200,200); pressText ("really miss you", "3.jpg ", "", Font. BOLD, 200,200 );}}