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(); } }
工具提示添加效果如图:
总结
到此这篇关于Java如何在PDF中添加ToolTip工具提示的文章就介绍到这了,更多相关Java PDF中添加ToolTip内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
SpringBoot使用Flyway进行数据库管理的操作方法
Flyway是一个开源的数据库版本管理工具,并且极力主张“约定大于配置”,简单、专注、强大。接下来通过本文给大家介绍SpringBoot使用Flyway进行数据库管理的方法,感兴趣的朋友一起看看吧2021-09-09Netty分布式高性能工具类FastThreadLocal和Recycler分析
这篇文章主要为大家介绍了Netty分布式高性能工具类FastThreadLocal和Recycler分析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪2022-03-03SpringMVC加载控制与Postmand的使用和Rest风格的引入及RestFul开发全面详解
SpringMVC是一种基于Java,实现了Web MVC设计模式,请求驱动类型的轻量级Web框架,即使用了MVC架构模式的思想,将Web层进行职责解耦。基于请求驱动指的就是使用请求-响应模型,框架的目的就是帮助我们简化开发,SpringMVC也是要简化我们日常Web开发2022-10-10
最新评论