java 给pdf文档加水印
utils类 可以直接调用 传入参数就可以
/**
*
* @param count 默认从1开始 在添加权限页面时设置
* @param srcFilePath 要加水印的pdf文档
* @param descFilePath 然后生成一个新的pdf文档
* @param textWatermark 加水印的档案馆信息
* @param textWaterpath 用户的信息 和修改的时间
* @return
* @throws IOException
* @throws DocumentException
*/
public static boolean pdfInsertWatermark(Integer count,String srcFilePath,String descFilePath,
String textWatermark,String textWaterpath,
Integer state)throws Exception {
PdfReader reader = new PdfReader(srcFilePath);
PdfStamper stamper = new PdfStamper(reader, new FileOutputStream(descFilePath));
PdfGState gs = new PdfGState();
//统一的系统文字格式
BaseFont font = BaseFont.createFont("STSong-Light","UniGB-UCS2-H", BaseFont.NOT_EMBEDDED);
gs.setFillOpacity(0.2f);// 设置透明度
// 设置覆盖全页的文字格式
Font f=new Font(font,10);
Phrase p = new Phrase(textWaterpath,f);
int total = reader.getNumberOfPages() + 1;
PdfContentByte content;
//为每一页加上档案馆的水印
for (int i = count; i < total; i++) {
content = stamper.getOverContent(i);
content.beginText();
content.setGState(gs);
if(state==0){
content.setColorFill(BaseColor.RED); //水印颜色
}
if(state==1){
content.setColorFill(BaseColor.GRAY);
}
content.setFontAndSize(font, 40); //水印字体样式和大小
content.showTextAligned(Element.ALIGN_CENTER,textWatermark, 300, 300, 45); //水印内容和水印位置
//为每一页加上用户资料和修改的时间 以防档案泄露
for (int y = 0; y < 10; y++) {
for (int x = 0; x < 8; x++) {
// 水印文字成0度角倾斜
ColumnText.showTextAligned(content, Element.ALIGN_CENTER, p, 158 * y,80 + 140 * x , 45);
}
}
content.endText();
}
stamper.close();//关闭流 防止删除删除不了
reader.close();
reader=null;
return true;
}
maven
spire.office.freen包 可以上网找一下 也可以找我拿
<dependency><groupId>e-iceblue</groupId><artifactId>spire.office.free</artifactId><version>3.9.1</version><scope>system</scope><systemPath>${project.basedir}/src/main/resources/lib/spire.office.free-3.9.0.jar</systemPath></dependency>
java 给pdf文档加水印相关推荐
- java怎么给文档加水印_Java 如何给Word文档添加多行文字水印
前言 我在以往的文章中曾介绍过如何给Word文档添加文本水印和图片水印,及怎样删除文档中的水印.关于文本水印,之前那篇教程里主要指的是单行字体的水印,而在操作Word文档时,有时也会碰到需要添加多行文 ...
- Java 处理PDF文档(一):页眉页脚、水印、背景、附件
前言 本文将介绍通过Java编程来处理PDF文档的一些方法,因为一篇文档的处理可能包括很多内容,比如文档安全性设置(水印.加密/解密).文本/图片/图形操作.注释.附件.域.文档转换(其他文件格式转为 ...
- OA系统中源文档加水印功能
一.需求背景 在使用OA的时候,对于文档权限的把控是十分严格的,文档下载到本地打开,需要文档中显示是谁下载的,以便于如果此文档被下载分发,能够找到是谁下载分发的,做到文档的追踪溯源. 对于下载的文档, ...
- Java在PDF文档中添加或删除页面
前言 当你编辑一个PDF文档时,有时需要删除文档中多余的页面或向文档中添加新的页面.本文将向您演示如何使用Spire.PDF for Java在PDF文档中添加或删除页面. 程序环境 安装Spire. ...
- java生成pdf方法_详解Java生成PDF文档方法|chu
最近项目需要实现PDF下载的功能,由于没有这方面的经验,从网上花了很长时间才找到相关的资料.整理之后,发现有如下几个框架可以实现这个功能. 1. 开源框架支持iText,生成PDF文档,还支持将XML ...
- java jar 打印_三种Java打印PDF文档的实例代码
以下内容归纳了通过Java程序打印PDF文档时的3种情形.即: 1 静默打印 2 显示打印对话框打印 3 打印PDF时自定义纸张大小 使用工具:Spire.PDF for Java Jar文件获取及导 ...
- 为Word文档加水印使其更加美观(转)
为Word文档加水印使其更加美观(转) 许多朋友在制作Word文档时,为使文档更加美观,喜欢在其中加上水印.而通常制作水印的方法是通过图形的层叠来实现的,但如果需要为文档中的每一页都加有相同水印的话, ...
- 如何给word文档加水印
转自:微点阅读 https://www.weidianyuedu.com/content/3519276155101.html 怎么给word文档添加水印?这是很多人心里面都有的疑问,给word文档 ...
- 如何批量去除PDF文档的水印 .
现在的互联网时代是一个共享的时代,我们会经常从网络上面下载一些文件资料等等,那么是不是经常会遇到一些网站上的PDF文件会含有该网站的水印或者网址链接等等,接下来我们就是要讲怎样去水印. 单个PDF页的 ...
- 【教程】如何使用Java生成PDF文档?
在如今数字化时代,越来越多的人使用PDF文档进行信息传递和共享.而使用Java生成PDF文档也成为了一个非常重要的技能,因为Java作为一种通用的编程语言,可以在不同的操作系统和平台上运行.下面,我们 ...
最新文章
- 天池算法赛:数据挖掘经典赛事!DCIC 2020 数字中国创新大赛启动!
- 一份传世典文:十年编程(Teach Yourself Programming in Ten Years)
- 如何禁止掉root登录,使用key密钥登录
- java调用一个方法后怎么继续执行不等待该方法的返回_Java面试题大全2020版(二)...
- python涉及到的逻辑_涉及逻辑运算的python表达式的运算顺序
- Android控件——ListView之Adapter提供数据(其二)
- java调用平方函数,Java8函数式编程入门
- performSelector:withObject:afterDelay: 精要概览(持续更新)
- Oracle BIEE 链接oracle 数据库的问题,报:Check if 'Oracle OCI 10G' database client is installed
- HTML实现学习网站首页
- 微信开发 MySQL 存储 Emoji 表情
- Ghost XP SP2 64位 纯净珍藏版
- 计算机坏处英语,玩电脑的危害英语作文,沉迷电脑的危害英语作文!
- bluefish开发php,Bluefish—优秀的Linux下HTML编辑器
- 鸿蒙系统4月24日升级哪几款手机,大器晚成!鸿蒙系统或4月24号推送更新,你的机型在内吗?...
- CSS4day(圆角边框,阴影,浮动详解及其示例)
- 迷宫问题(解救小哈)
- OpenCV - imwrite保存透明PNG
- java数独最快解_java快速解数独
- 港股2017年表现全球最好,区块链将助推新经济牛市?