-
Java 在PDF中添加工具提示|ToolTip
本文,将介绍如何通过Java后端程序代码在PDF中创建工具提示。添加工具提示后,当鼠标悬停在页面上的元素时,将显示工具提示内容。
导入jar包
本次程序中使用的是 Free Spire.PDF for Java,具体导入jar文件的方法参考如下内容。
两种方法可导入jar到程序:
方法1. 通过Maven仓库下载导入。在pom.xml配置:
<repositories> <repository> <id>com.e-iceblue</id> <url>https://repo.e-iceblue.cn/repository/maven-public/</url> </repository> </repositories> <dependencies> <dependency> <groupId>e-iceblue</groupId> <artifactId>spire.pdf.free</artifactId> <version>4.4.1</version> </dependency> </dependencies>
方法2. 下载 jar包 到本地,解压,找到lib文件夹下的Spire.Pdf.jar文件,然后执行如下图中的步骤导入:
添加工具提示ToolTip
在本次代码中给PDF添加提示工具以查找的指定文本元素为例,主要步骤如下:
- 实例化PdfDocument类的对象,并通过PdfDocument.loadFromFile(String filename)方法加载PDF文档。
- 通过PdfPageBase.findText(String searchPatternText).getFinds()方法查找页面上的指定文本,并获取查找到的文字边界。
- 创建一个PdfButtonField类型的按钮,将大小设置为查找到的文字边界大小;并通过PdfButtonField.setToolTip(String value)方法设置工具提示内容。
- 通过PdfDocument.saveToFile(String filename, FileFormat fileFormat)方法保存PDF文档到指定路径。
Java
import com.spire.pdf.*; import com.spire.pdf.fields.PdfButtonField; import com.spire.pdf.fields.PdfButtonLayoutMode; import com.spire.pdf.general.find.PdfTextFind; import java.awt.geom.Rectangle2D; public class ToolTip { public static void main(String[] args) { //加载示例文档 PdfDocument pdf = new PdfDocument(); pdf.loadFromFile("test.pdf"); //获取第2页并查找字符串,获取其位置 PdfPageBase page = pdf.getPages().get(1); PdfTextFind[] result = page.findText("安装与反安装测试").getFinds(); Rectangle2D rec = result[0].getBounds(); //在搜索文本上添加不可见按钮 PdfButtonField field1 = new PdfButtonField(page, "field1"); field1.setBounds(rec); //设置工具提示文本及样式 field1.setToolTip( "详见文末附件内容及使用手册!"); field1.setBorderWidth(0); field1.setLayoutMode(PdfButtonLayoutMode.Icon_Only); field1.getIconLayout().isFitBounds(); //保存文档 pdf.saveToFile("Result.pdf", FileFormat.PDF); pdf.dispose(); } }
工具提示添加效果如图:
出处:https://www.cnblogs.com/Yesi/p/15788144.html
栏目列表
最新更新
springboot~某个接口模拟登录并同步给feig
Java反射中与自动装箱有关的坑及其解决方
java 基础语法学习
面试被问Java序列化和反序列化为什么要实
你还在用命令看日志?快用 Kibana 吧,一
【JAVA并发第一篇】Java的进程与线程
【JAVA并发第四篇】线程安全
初窥MyBatis-普通的CRUD操作
mybatis(1)
HTTP常用请求头大揭秘
MongoDB常用命令(2)
MongoDB基本介绍与安装(1)
SQLServer触发器调用JavaWeb接口
SQL Server索引的原理深入解析
SqlServer2016模糊匹配的三种方式及效率问题
SQL中Truncate的用法
sqlserver 多表关联时在where语句中慎用tri
链接服务器读取Mysql---出现消息 7347,级别
SQL Server解惑——为什么你拼接的SQL语句换
MySQL视图了解一下
es6 快速入门 系列 —— 类 (class)
前端 Validform.js属性,用法及Ajax提交简介
前端甘特图dhtmx-gantt
Typescript开发学习总结(附大量代码)
koa2+mock实现一个数据服务器
JavaScript 面向对象编程思想的理解
js原型和原型链
有关Js 创建对象的几种方式
Js 原型链
js中的隐式转换