温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

java画图工具来添加水印的实现方法

发布时间:2021-07-02 15:45:44 来源:亿速云 阅读:145 作者:chen 栏目:大数据

这篇文章主要讲解了“java画图工具来添加水印的实现方法”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“java画图工具来添加水印的实现方法”吧!

用Java代码给图片加水印

不多哔哔,直接上代码:

    /**      * @param srcImgFile       原图片文件对象      * @param outFile          输出图片文件对象      * @param waterMarkContent 水印内容      * @param markContentColor 水印颜色      * @param rate             字体间距      * @param x                x轴位置      * @param y                y轴位置      * @param font             字体      */     public static void addWaterMark(File srcImgFile, File outFile, String waterMarkContent, Color markContentColor, double rate, int x, int y, Font font) {         try {             // 读取原图片信息             Image srcImg = ImageIO.read(srcImgFile);//文件转化为图片             int srcImgWidth = srcImg.getWidth(null);//获取图片的宽             int srcImgHeight = srcImg.getHeight(null);//获取图片的高             // 加水印             BufferedImage bufImg = new BufferedImage(srcImgWidth, srcImgHeight, BufferedImage.TYPE_INT_RGB); // 获取图片缓冲区             Graphics2D g = bufImg.createGraphics(); // 创建Graphics2D画笔对象             g.drawImage(srcImg, 0, 0, srcImgWidth, srcImgHeight, null);             g.setColor(markContentColor); //根据图片的背景设置水印颜色             g.setFont(font);              //设置字体             WaterMarkUtils.MyDrawString(waterMarkContent,x,y,rate,g); // 设置字体间距加输出                          g.dispose(); // 进行处理             // 输出图片               FileOutputStream outImgStream = new FileOutputStream(outFile); // 创建文件输出流             ImageIO.write(bufImg, "jpg", outImgStream);             System.out.println("添加水印完成");             outImgStream.flush(); // 刷新文件             outImgStream.close(); // 释放资源         } catch (Exception e) {             System.out.println("异常");             e.printStackTrace();         }     }
设置字体间距

这个是在百度上找的,原贴的地址https://blog.csdn.net/zixiaomuwu/article/details/51068698

    /**      * 设置字体间距加输出      * @param str  输出字符串      * @param x    x轴      * @param y    y轴      * @param rate 字体间距      * @param g    画笔对象      */     public static void MyDrawString(String str,int x,int y,double rate,Graphics2D g){         String tempStr=new String();         int orgStringWight=g.getFontMetrics().stringWidth(str);         int orgStringLength=str.length();         int tempx=x;         int tempy=y;         while(str.length()>0)         {             tempStr=str.substring(0, 1);             str=str.substring(1, str.length());             g.drawString(tempStr, tempx, tempy);             tempx=(int)(tempx+(double)orgStringWight/(double)orgStringLength*rate);         }     }

感谢各位的阅读,以上就是“java画图工具来添加水印的实现方法”的内容了,经过本文的学习后,相信大家对java画图工具来添加水印的实现方法这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI