
用Java给jpg图片加文字水印,加的水印盖住了原来的图片,怎么办。
代码如下File_file=newFile(targetImg);Imagesrc=ImageIO.read(_file);intwideth=src.getWidth(...
代码如下
File _file = new File(targetImg);
Image src = ImageIO.read(_file);
int wideth = src.getWidth(null);
int height = src.getHeight(null);
BufferedImage image = new BufferedImage(wideth, height,
BufferedImage.TYPE_INT_RGB);
Graphics g = image.createGraphics();
g.drawImage(src, 0, 0, wideth, height, null);
g.setColor(Color.red);
g.setFont(new Font(fontName, fontStyle, fontSize));
g.drawString(pressText, wideth - fontSize - x, height - fontSize / 2 - y);
g.dispose();
FileOutputStream out = new FileOutputStream(targetImg);
JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out);
encoder.encode(image);
out.close(); 展开
File _file = new File(targetImg);
Image src = ImageIO.read(_file);
int wideth = src.getWidth(null);
int height = src.getHeight(null);
BufferedImage image = new BufferedImage(wideth, height,
BufferedImage.TYPE_INT_RGB);
Graphics g = image.createGraphics();
g.drawImage(src, 0, 0, wideth, height, null);
g.setColor(Color.red);
g.setFont(new Font(fontName, fontStyle, fontSize));
g.drawString(pressText, wideth - fontSize - x, height - fontSize / 2 - y);
g.dispose();
FileOutputStream out = new FileOutputStream(targetImg);
JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out);
encoder.encode(image);
out.close(); 展开
3个回答
展开全部
jpg文件上的水印的清除方法:
如果需要将带水印的JPG转换成05H的PDG:
1、 将PDG批量更名为JPG。如果下载的时候就已经是JPG,则此步省略。
2、用ComicEnhancer Pro打开带水印的JPG,色彩选“单色”,水印没了吧?不过这个时候文字多半也会变得很细,可以通过增加“Gamma校正”值,或用“曲线”来加黑。注意“Gamma校正”和“曲线”选一个足矣。调节好以后,转换成TIFF。
3、将TIFF文件更名为PDG,并且符合PDG文件命名规范,然后用高版本DjVuToy的“PDG压缩”功能转换成05H的PDG。注意转换的时候把“转换为快速版”选项去掉。
如果不需要转换成PDG,而是希望在去掉水印的同时尽可能保持清晰:
1、将PDG批量更名为JPG。如果下载的时候就已经是JPG,则此步省略。
2、用ComicEnhancer Pro打开带水印的JPG,将“高亮度”设置为125,看到那神奇的效果了吗?如果希望对文字的影响尽可能小,还可以尝试将“高亮值”设置为210。
3、下面就看你高兴了,可以直接存为JPG,也可以在色彩选“16级灰度”、“8级灰度”、“4级灰度”,然后转换成PNG。灰度级数越少,图像损失越多,文件越小,16级灰度基本上肉眼看不出文字部分有任何损失,4级灰度则很明显,可以结合“曲线”或“Gamma校正”等加以改善。
如果需要将带水印的JPG转换成05H的PDG:
1、 将PDG批量更名为JPG。如果下载的时候就已经是JPG,则此步省略。
2、用ComicEnhancer Pro打开带水印的JPG,色彩选“单色”,水印没了吧?不过这个时候文字多半也会变得很细,可以通过增加“Gamma校正”值,或用“曲线”来加黑。注意“Gamma校正”和“曲线”选一个足矣。调节好以后,转换成TIFF。
3、将TIFF文件更名为PDG,并且符合PDG文件命名规范,然后用高版本DjVuToy的“PDG压缩”功能转换成05H的PDG。注意转换的时候把“转换为快速版”选项去掉。
如果不需要转换成PDG,而是希望在去掉水印的同时尽可能保持清晰:
1、将PDG批量更名为JPG。如果下载的时候就已经是JPG,则此步省略。
2、用ComicEnhancer Pro打开带水印的JPG,将“高亮度”设置为125,看到那神奇的效果了吗?如果希望对文字的影响尽可能小,还可以尝试将“高亮值”设置为210。
3、下面就看你高兴了,可以直接存为JPG,也可以在色彩选“16级灰度”、“8级灰度”、“4级灰度”,然后转换成PNG。灰度级数越少,图像损失越多,文件越小,16级灰度基本上肉眼看不出文字部分有任何损失,4级灰度则很明显,可以结合“曲线”或“Gamma校正”等加以改善。
展开全部
设置水印图片的透明度
Graphics2D g2d = image.createGraphics();
AlphaComposite ac=AlphaComposite.getInstance(AlphaComposite.SRC_OVER, 0.5f);//设置水印字体透明度
g2d.setComposite(ac);
Graphics2D g2d = image.createGraphics();
AlphaComposite ac=AlphaComposite.getInstance(AlphaComposite.SRC_OVER, 0.5f);//设置水印字体透明度
g2d.setComposite(ac);
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
设置水印图片的透明度,一楼正解
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询