Java如何在PDF中添加ToolTip工具提示

 更新时间:2022年01月24日 11:23:02   作者:Tobemia  
大家好,本篇文章主要讲的是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文件,然后执行如下图中的步骤导入:

Java 在PDF中添加工具提示ToolTip_Maven

Java 在PDF中添加工具提示ToolTip_工具提示_02

Java 在PDF中添加工具提示ToolTip_java_03

添加工具提示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_Maven_04

总结

到此这篇关于Java如何在PDF中添加ToolTip工具提示的文章就介绍到这了,更多相关Java PDF中添加ToolTip内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Java基础之数组的初始化过程

    Java基础之数组的初始化过程

    Java数组分为静态和动态初始化,静态初始化中,程序员设定元素初始值,系统决定长度;动态初始化中,程序员设定长度,系统提供初始值,数组初始化后长度固定,存储在堆内存中,数组变量在栈内存指向堆内存数组对象,基本类型数组存储数据值,引用类型数组存储对象引用
    2024-10-10
  • SpringBoot使用Flyway进行数据库管理的操作方法

    SpringBoot使用Flyway进行数据库管理的操作方法

    Flyway是一个开源的数据库版本管理工具,并且极力主张“约定大于配置”,简单、专注、强大。接下来通过本文给大家介绍SpringBoot使用Flyway进行数据库管理的方法,感兴趣的朋友一起看看吧
    2021-09-09
  • 如何运行SpringBoot项目的方法

    如何运行SpringBoot项目的方法

    这篇文章主要介绍了如何运行SpringBoot项目的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-03-03
  • 一文秒懂Java中的乐观锁 VS 悲观锁

    一文秒懂Java中的乐观锁 VS 悲观锁

    这篇文章主要介绍了java乐观锁 VS 悲观锁的相关知识,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧
    2021-05-05
  • 你真的会使用Java的方法引用吗

    你真的会使用Java的方法引用吗

    这篇文章主要给大家介绍了关于Java方法引用的相关资料,方法引用是Java8的新特性,方法引用其实也离不开Lambda表达式,本文通过示例代码介绍的很详细,需要的朋友可以参考下
    2021-08-08
  •  Spring 中 Bean 的生命周期详解

     Spring 中 Bean 的生命周期详解

    这篇文章主要介绍了Spring中Bean的生命周期详解,Java中的公共类称之为Bean或Java Bean,而Spring中的Bean指的是将对象的生命周期
    2022-09-09
  • Spring如何使用xml创建bean对象

    Spring如何使用xml创建bean对象

    这篇文章主要介绍了Spring如何使用xml创建bean对象,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-08-08
  • Netty分布式高性能工具类FastThreadLocal和Recycler分析

    Netty分布式高性能工具类FastThreadLocal和Recycler分析

    这篇文章主要为大家介绍了Netty分布式高性能工具类FastThreadLocal和Recycler分析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-03-03
  • Java二进制操作(动力节点Java学院整理)

    Java二进制操作(动力节点Java学院整理)

    这篇文章给大家介绍了java二进制操作技巧,包括移位、位运算操作符等相关知识点,非常不错,感兴趣的朋友参考下吧
    2017-03-03
  • SpringMVC加载控制与Postmand的使用和Rest风格的引入及RestFul开发全面详解

    SpringMVC加载控制与Postmand的使用和Rest风格的引入及RestFul开发全面详解

    SpringMVC是一种基于Java,实现了Web MVC设计模式,请求驱动类型的轻量级Web框架,即使用了MVC架构模式的思想,将Web层进行职责解耦。基于请求驱动指的就是使用请求-响应模型,框架的目的就是帮助我们简化开发,SpringMVC也是要简化我们日常Web开发
    2022-10-10

最新评论