【J2SE】Java实现给图片添加水印

  1. import java.awt.*;
  2. import java.awt.image.*;
  3. import java.io.*;
  4. import javax.swing.*;
  5. import com.sun.image.codec.jpeg.*; 
  6. public class WaterMark ...{
  7. /** *//**
  8. * 给图片添加水印
  9. * @param filePath 需要添加水印的图片的路径
  10. * @param markContent 水印的文字
  11. * @param markContentColor 水印文字的颜色
  12. * @param qualNum 图片质量
  13. * @return
  14. */
  15. public boolean createMark(String filePath,String markContent,Color markContentColor,float qualNum,String watermark)
  16. ...{
  17. ImageIcon imgIcon=new ImageIcon(filePath);
  18. Image theImg =imgIcon.getImage();
  19. int width=theImg.getWidth(null);
  20. int height= theImg.getHeight(null);
  21. //ImageIcon waterIcon=new ImageIcon(watermark);
  22. //Image waterImg =waterIcon.getImage();
  23. BufferedImage bimage = new BufferedImage(width,height, BufferedImage.TYPE_INT_RGB);
  24. Graphics2D g=bimage.createGraphics();
  25. g.setColor(markContentColor);
  26. g.setBackground(Color.white);
  27. g.drawImage(theImg, 0, 0, null );
  28. //g.drawImage(waterImg, width*2, height, null );
  29. g.drawString(markContent,width-100,height-30); //添加水印的文字和设置水印文字出现的内容
  30. g.dispose();
  31. try...{
  32. FileOutputStream out=new FileOutputStream(filePath);
  33. JPEGImageEncoder encoder =JPEGCodec.createJPEGEncoder(out);
  34. JPEGEncodeParam param = encoder.getDefaultJPEGEncodeParam(bimage);
  35. param.setQuality(qualNum, true);
  36. encoder.encode(bimage, param);
  37. out.close();
  38. }catch(Exception e)
  39. ...{ return false; }
  40. return true;
  41. }
  42. public static void main(String arg[])
  43. ...{
  44. WaterMark wk=new WaterMark();
  45. if(wk.createMark("D:/1.jpg","Welcome!",Color.WHITE,70f,""))...{
  46. System.out.println("制作成功");
  47. }else...{
  48. System.out.println("失败了!");
  49. }
  50. }
  51. }
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值