使用Java怎么实现给图片打上水印

  介绍

本篇文章给大家分享的是有关使用Java怎么实现给图片打上水印,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

Java基本数据类型有哪些

Java的基本数据类型分为:1,整数类型,用来表示整数的数据类型。2,浮点类型,用来表示小数的数据类型。3,字符类型,字符类型的关键字是“字符”。4,布尔类型,是表示逻辑值的基本数据类型。


import  javax.imageio.ImageIO;   import  java.awt。*;   import  java.awt.image.BufferedImage;   import  java.io.File;   import  java.io.FileOutputStream;      public  class  ImageUtils  {      ,,,//,水印字体   ,,,private  static  final  Font  Font =, new 字体(“微软雅黑,,,Font.PLAIN,, 14);      ,,,//,透明度   ,,,private  static  final  AlphaComposite  COMPOSITE =, AlphaComposite.getInstance (AlphaComposite.SRC_OVER, 0.6 f);      ,,,//,水印之间的间隔   ,,,private  static  final  int  XMOVE =, 150;      ,,,//,水印之间的间隔   ,,,private  static  final  int  YMOVE =, 200;   ,,,,   ,,,/* *   ,,,,*,打水印(文字)   ,,,,   ,,,,*,@param  srcImgPath ,,,,,,源文件地址   ,,,,*,@param  font ,,,,,,,,,,,,字体   ,,,,*,@param  markContentColor 水印颜色   ,,,,*,@param  waterMarkContent 水印内容   ,,,*/,,,public  static  void  markWithContent (String  srcImgPath, Font 字体,,Color  markContentColor,, String  waterMarkContent), {   ,,,,,,,FileOutputStream  fos =,空;   ,,,,,,,try  {   ,,,,,,,,,,,//,读取原图片信息   ,,,,,,,,,,,File  srcFile =, new 文件(srcImgPath);   ,,,,,,,,,,,BufferedImage  srcImg =, ImageIO.read (srcFile);      ,,,,,,,,,,,//,图片宽,高   ,,,,,,,,,,,int  imgWidth =, srcImg.getWidth ();   ,,,,,,,,,,,int  imgHeight =, srcImg.getHeight ();      ,,,,,,,,,,,//,图片缓存   ,,,,,,,,,,,BufferedImage  bufImg =, new  BufferedImage (imgWidth, imgHeight,, BufferedImage.TYPE_INT_RGB);      ,,,,,,,,,,,//,创建绘图工具   ,,,,,,,,,,,Graphics2D  g =, bufImg.createGraphics ();      ,,,,,,,,,,,//,画入原始图像   ,,,,,,,,,,,g.drawImage (srcImg, 0, 0,, imgWidth,, imgHeight,, null);      ,,,,,,,,,,,//,设置水印颜色   ,,,,,,,,,,,g.setColor (markContentColor);      ,,,,,,,,,,,//,设置水印透明度   ,,,,,,,,,,,g.setComposite(复合);      ,,,,,,,,,,,//,设置倾斜角度   ,,,,,,,,,,,g.rotate (Math.toRadians(-35),(双),bufImg.getWidth(),,, 2,,(双),bufImg.getHeight (),/, 2);      ,,,,,,,,,,,//,设置水印字体   ,,,,,,,,,,,g.setFont(字体);      ,,,,,,,,,,,//,消除属性字体的锯齿   ,,,,,,,,,,,g.setRenderingHint (RenderingHints.VALUE_ANTIALIAS_ON RenderingHints.KEY_ANTIALIASING也);      ,,,,,,,,,,,int  x =, -imgWidth /, 2;   ,,,,,,,,,,,int  y;      ,,,,,,,,,,,//,字体长度   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null

使用Java怎么实现给图片打上水印