给图片加水印?这是我见过最简单的实现方式

简介: 大家好,我是指北君。在项目中经常有需要在图片上添加水印的需求以及在某些场合下需要身份证图片,这时就可以对身份证上加水印防止被用于其他用途,java 在处理图片水印时不需要额外的第三方包,使用 BufferedImage 和 Graphics2D 就可以搞定

读取图片

读取图片非常简单,使用 ImageIO 读取 file 文件就行了。

1.png

添加水印

Image 类是一个抽象类,无法被直接创建,我们可以使用 BufferedImage 读取缓存中的图像数据。Graphics2D 类继承于 Graphics 类,Graphics2D 类是 java 渲染文字及图片的基础类,提供了对绘制、填充、旋转和定义颜色的支持。

2.png

接下来就是创建水印的字体、颜色了,如果水印文字在右边的话,我们需要知道文字的长度。

3.png

保存图片

最后使用 FileOutputStream 和 ImageIO.write() 保存图片。

4.png

效果:

5.jpg

添加图片水印

添加图片水印更是简单,不再需要设置字体和颜色,直接使用 graphics2D.drawImage() 方法。

6.png

效果:

7.jpg

总结

BufferedImage 和 Graphics2D 还可以做其他事情,比如对表情包添加文字等。大家都可以去试试,做出自己的实用工具库。

我是指北君,操千曲而后晓声,观千剑而后识器。感谢各位人才的:点赞、收藏和评论,我们下期更精彩!

相关文章
|
3月前
|
JavaScript 前端开发 安全
80 行 JS 代码实现页面添加水印:文字水印、多行文字水印、图片水印、文字&图片水印
80 行 JS 代码实现页面添加水印:文字水印、多行文字水印、图片水印、文字&图片水印 1. 信息标识: 水印可以用于标识文档的所有者、保密级别、状态或其他相关信息,帮助用户更好地理解文档内容的属性。 2. 版权保护: 在文档中添加水印可以帮助保护内容的版权,防止他人未经授权地复制、转载或篡改内容。 3. 安全保护: 对于敏感信息或机密文档,添加水印可以帮助防止信息泄露,提高文档的安全性。 4. 提升专业性: 在一些场景下,如商业报告、合同文件等,添加水印可以增加文档的专业性和正式性。 5. 防止截屏或拷贝: 在网页中添加水印可以防止用户通过截屏或复制粘贴等方式非法获取文档内容。
46 1
80 行 JS 代码实现页面添加水印:文字水印、多行文字水印、图片水印、文字&图片水印
|
4月前
|
存储 算法 C#
C# 生成指定图片的缩略图
C# 生成指定图片的缩略图
|
数据安全/隐私保护
生活中常用的图片去水印方法有哪些呢
有时候我们想换头像/微信背景墙了 是不是第一时间想到的是去某书逛逛,有时候看到有些博主分享的壁纸或者表情包等,忍不住的想保存下来,很多人应该还不知道如何下载吧,今天分享我的三个操作方法
|
Python
【图片操作】批量生成缩略图
在我们日常生活中,缩略图很大程度减少了我们内存的使用。如果我们看一张图片就必须加载完成后才能看,那么我们就会发现很多应用都变慢了很多,而且流量也消耗的很快。今天我们就来看看Python生成缩略图的操作。
352 0
【图片操作】给图片添加滤镜
现在我们都喜欢给图片添加滤镜,现在很多相机也自带了许多滤镜。我们可以在拍照的时候选择需要的滤镜。但是有时候我们需要给大量图片添加同样的滤镜,这个时候手动添加就非常麻烦了。为了方便,我们可以使用程序来帮我们完成添加滤镜的操作。
235 0
|
文件存储 Android开发 数据安全/隐私保护
Android图片添加水印图片并把图片保存到文件存储
Android图片添加水印图片并把图片保存到文件存储 package zhangphil.test; import android.
1485 0
|
Java API Maven
一行代码搞定图片缩略图处理
不知道大家现在工作中还有没有使用过Java处理图片的。强哥在大学毕业后,从事服务端WEB开发,就很少接触图片处理。有接触图片的,大多也就是图片的上传下载。所以,对Java处理图片相关的技术也都没怎么接触。
一行代码搞定图片缩略图处理
|
JavaScript
原生js实现图片单张上传及批量上传
原生js实现图片单张上传及批量上传
|
安全 数据安全/隐私保护
|
C# 图形学 数据安全/隐私保护