java pdf 水印_Java在PDF中添加水印(文本/图片水印)
水印是一种十分常用的防伪手段,常用于各种文档、资料等。常见的水印,包括文字类型的水印、图片或logo类型的水印。以下Java示例,将分别使用insertTextWatermark(PdfPageBase page, String watermark)方法以及page.SetBackgroundImage(String arg0)方法来设置文本水印和图片水印。下面将演示具体的代码操作,内容供参考。
Jar文件导入(方法1):
步骤1:下载jar包-解压,复制文件夹lib中的jar文件
步骤2:在程序中新建一个directory目录,并命名,将步骤1中的jar文件复制到此处。
步骤3:选中复制后的jar文件,点击鼠标右键,选着“Add as Library”。完成引用。
Jar文件导入(方法2):通过maven安装,可参考官网上的具体操作步骤。
Java代码示例(供参考)
【示例1】添加文本水印import com.spire.pdf.*;
import com.spire.pdf.graphics.*;
import java.awt.*;
import java.awt.geom.*;
public class Textwatermark {
public static void main(String[] args) {
//创建PdfDocument类的对象
PdfDocument pdf = new PdfDocument();
//加载测试文档
pdf.loadFromFile("test.pdf");
//获取测试文档中的第一页
PdfPageBase page = pdf.getPages().get(0);
//调用insertWatermark()方法添加文本水印
insertWatermark(page);
//保存文档
pdf.saveToFile("out/textWaterMark.pdf");
}
static void insertWatermark(PdfPageBase page) {
Dimension2D dimension2D = new Dimension();
PdfTrueTypeFont font1 = new PdfTrueTypeFont(new Font("Arial Unicode MS", Font.PLAIN, 14), true);
dimension2D.setSize(page.getCanvas().getClientSize().getWidth() / 5, page.getCanvas().getClientSize().getHeight() / 5);
PdfTilingBrush brush = new PdfTilingBrush(dimension2D);
brush.getGraphics().setTransparency(0.4F);
brush.getGraphics().save();
brush.getGraphics().translateTransform((float) brush.getSize().getWidth() / 5, (float) brush.getSize().getHeight() / 5);
brush.getGraphics().rotateTransform(-45);
brush.getGraphics().drawString("密件", font1, PdfBrushes.getViolet(), 0 , 0 , new PdfStringFormat(PdfTextAlignment.Center));
brush.getGraphics().restore();
brush.getGraphics().setTransparency(1);
Rectangle2D loRect = new Rectangle2D.Float();
loRect.setFrame(new Point2D.Float(0, 0), page.getCanvas().getClientSize());
page.getCanvas().drawRectangle(brush, loRect);
}
}
文本水印添加效果:
【示例2】添加图片水印import com.spire.pdf.*;
import java.awt.geom.Rectangle2D;
public class watermark {
public static void main(String[] args) {
//实例化PdfDocument类的对象,并加载测试文档
PdfDocument doc = new PdfDocument();
doc.loadFromFile("test.pdf");
//获取文档第1页
PdfPageBase page = doc.getPages().get(0);
//加载图片,设置为背景水印
page.setBackgroundImage("logo.png");
//指定水印在文档中的位置及图片大小
Rectangle2D.Float rect = new Rectangle2D.Float();
rect.setRect(150, 150, 300, 150);
page.setBackgroundRegion(rect);
//保存文档
doc.saveToFile("output/imageWaterMark.pdf");
doc.close();
}
}
图片水印添加效果:
(本文完)
java pdf 水印_Java在PDF中添加水印(文本/图片水印)相关推荐
- java pdf 水印_Java 在PDF中添加水印——文本/图片水印
水印是一种十分常用的防伪手段,常用于各种文档.资料等.常见的水印,包括文字类型的水印.图片或logo类型的水印.以下java示例,将分别使用inserttextwatermark(pdfpagebas ...
- java给水印被pdf图片盖住_Java 在PDF中添加水印——文本/图片水印
水印是一种十分常用的防伪手段,常用于各种文档.资料等.常见的水印,包括文字类型的水印.图片或logo类型的水印.以下Java示例,将分别使用insertTextWatermark(PdfPageBas ...
- java jlabel 对齐_java – 将JLabel中的文本对齐
这可以通过两种方式完成. JLabel水平对齐 您可以使用JLabel constructor: JLabel(String text, int horizontalAlignment) 与右对齐: ...
- java为word添加水印,图片水印和文字水印
java为word添加水印,图片水印和文字水印 jdk1.5及以上 所需jar包:Spire.Office.jar 或 Spire.Doc.jar jar包下载:https://www.e-icebl ...
- java给文件添加水印_Java在PDF中添加水印(文本/图片水印)
水印是一种十分常用的防伪手段,常用于各种文档.资料等.常见的水印,包括文字类型的水印.图片或logo类型的水印.以下Java示例,将分别使用insertTextWatermark(PdfPageBas ...
- java pdf 水印_Java在PDF中添加水印(文本/图片水印)效果
水印是一种十分常用的防伪手段,常用于各种文档.资料等.常见的水印,包括文字类型的水印.图片或logo类型的水印.以下Java示例,将分别使用insertTextWatermark(PdfPageBas ...
- Java在PDF中添加水印(文本/图片水印)效果import com.spire.pdf.*; import com.spire.pdf.graphics.*; import java.awt.*;
水印是一种十分常用的防伪手段,常用于各种文档.资料等.常见的水印,包括文字类型的水印.图片或logo类型的水印.以下Java示例,将分别使用insertTextWatermark(PdfPageBas ...
- java为PDF添加水印,图片水印和文字水印
java为PDF添加水印,文字水印和图片水印 一个需求,下载pdf.word.excel文件时要带有水印,要求铺满.先分开,先介绍为PDF文件添加文字水印和图片水印. 所需jar包:itext-2.0 ...
- java 去掉pdf文字_Java 删除PDF中的附件
在PDF中添加附件,可分两种情况,一种是直接把文档作为附件插入到PDF,一种是注释附件,即将文档通过注释的形式插入到PDF页面中的指定位置,通过点击注释,即可打开注释中的附件文档.同样的,在我们删除P ...
最新文章
- WAT中Security选项卡无法连接到数据库解决办法
- JVM内存管理机制线上问题排查
- 解码python_Python解码
- JZOJ__Day 3:【NOIP普及模拟】排序(sort)
- 【算法系列之万字总结常用的查找算法,持续补充更新中】
- python获取系统当前时间并转utc时间为绝对秒数_用Python将datetime.date转换为UTC时间戳...
- 基于.NetCore结合docker-compose实践Gitlab-CI/CD 排坑指南
- 通信技术计算机通信方向专业,江西科技学院2014年招生通信工程(计算机通信方向)专业介绍...
- 奇安信代码卫士帮助微软修复多个高危漏洞,获官方致谢
- 服务器间数据传输的四种方式
- ConcurrentModificationException---异常剖析
- 《Android 应用案例开发大全(第3版)》——第1.2节掀起Android的盖头来
- java使用easypoi实现word模板导出
- 三菱机床的程序传输(DNC)支持上传到CF卡
- HTML前端连接go语言后段,一次完整的浏览器请求响应过程-Go语言中文社区
- 如何用美剧真正提升你的英语水平?
- Android App网络通信中通过runOnUiThread快速操纵界面以及利用线程池Executor调度异步任务实战(附源码 简单易懂)
- CGB2202API基础第1天
- 如何利用路由器连接wifi并将wifi网络分发出去
- 明天太阳照常升起的概率是多少?