如何给jpg图片添加水印
1个回答
展开全部
*@paramfilePath需要添加水印的图片的路径
*@parammarkContent水印的文字
*@parammarkContentColor水印文字的颜色
*@paramqualNum图片质量*@return*/publicbooleancreateMark(StringfilePath,StringmarkContent,ColormarkContentColor,floatqualNum){ImageIconimgIcon=newImageIcon(filePath);
ImagetheImg=imgIcon.getImage();
intwidth=theImg.getWidth(null);
intheight=theImg.getHeight(null);
BufferedImagebimage=newBufferedImage(width,height,BufferedImage.TYPE_INT_RGB);
Graphics2Dg=bimage.createGraphics();
g.setColor(markContentColor);
g.setBackground(Color.white);
g.drawImage(theImg,0,0,null);
g.drawString(markContent,width/5,height/5);//添加水印的文字和设置水印文字出现的内容
g.dispose();try{FileOutputStreamout=newFileOutputStream(filePath);
JPEGImageEncoderencoder=JPEGCodec.createJPEGEncoder(out);
JPEGEncodeParamparam=encoder.getDefaultJPEGEncodeParam(bimage);
param.setQuality(qualNum,true);
encoder.encode(bimage,param);
out.close();
*@parammarkContent水印的文字
*@parammarkContentColor水印文字的颜色
*@paramqualNum图片质量*@return*/publicbooleancreateMark(StringfilePath,StringmarkContent,ColormarkContentColor,floatqualNum){ImageIconimgIcon=newImageIcon(filePath);
ImagetheImg=imgIcon.getImage();
intwidth=theImg.getWidth(null);
intheight=theImg.getHeight(null);
BufferedImagebimage=newBufferedImage(width,height,BufferedImage.TYPE_INT_RGB);
Graphics2Dg=bimage.createGraphics();
g.setColor(markContentColor);
g.setBackground(Color.white);
g.drawImage(theImg,0,0,null);
g.drawString(markContent,width/5,height/5);//添加水印的文字和设置水印文字出现的内容
g.dispose();try{FileOutputStreamout=newFileOutputStream(filePath);
JPEGImageEncoderencoder=JPEGCodec.createJPEGEncoder(out);
JPEGEncodeParamparam=encoder.getDefaultJPEGEncodeParam(bimage);
param.setQuality(qualNum,true);
encoder.encode(bimage,param);
out.close();
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |