Java 设置PDF文档过期时间(有效期)

有些文档具有一定时效性,需在规定时间段内才可阅读查看,针对此类文档,需要设置文档的过期日期、时间等。下面以Java示例演示为例如何给PDF文档设置过期时间。需使用PDF类库, Free Spire.PDF for Java免费版),编辑代码前,导入Spire.Pdf.jar到Java程序,参考如下方法导入jar:

方法1下载jar包,将lib文件夹下的jar手动导入java程序;

方法2Maven程序中需要先配置pom.xml文件(如下),然后导入:

<repositories>
        <repository>
            <id>com.e-iceblue</id>
            <url>http://repo.e-iceblue.cn/repository/maven-public/</url>
        </repository>
</repositories>
<dependencies>
    <dependency>
        <groupId> e-iceblue </groupId>
        <artifactId>spire.pdf.free</artifactId>
        <version>3.9.0</version>
    </dependency>
</dependencies>

如下导入结果:

 

 

Java代码示例及文档操作结果:

import com.spire.pdf.*;
import com.spire.pdf.actions.PdfJavaScriptAction;

public class ExpiryDate {
    public static void main(String[] args) {
        //加载PDF测试文档
        PdfDocument pdf = new PdfDocument();
        pdf.loadFromFile("test.pdf");

        //通过JavaScript设置过期时间,过期警告信息并关闭文档
        String javaScript = "var rightNow = new Date();"
                + "var endDate = new Date('June 20, 2020 23:59:59');"
                + "if(rightNow.getTime() > endDate)"
                + "app.alert('该文档已过期,请重新联系管理员获取!',1);"
                + "this.closeDoc();";

        //根据JS创建PdfJavaScriptAction
        PdfJavaScriptAction js = new PdfJavaScriptAction(javaScript);

        //将PdfJavaScriptAction设置为文档打开后的动作
        pdf.setAfterOpenAction(js);

        //保存文档
        pdf.saveToFile("ExpiryDate.pdf", FileFormat.PDF);
        pdf.dispose();
    }
}

 

生成的文档如果已过期则提示过期信息,关闭对话框后不可查看过期文档。

 

posted @ 2020-10-30 14:48  E-iceblue  阅读(2017)  评论(0编辑  收藏  举报