C# 中使用JavaScript给PDF文档设置过期时间


我们可以给一些重要文档或者临时文件设置过期时间和过期信息提示来提醒读者或管理者文档的时效性,并及时对文档进行调整、更新等。下面,分享通过C#程序代码来给PDF文档设置过期时间的方法。

引入dll程序集

【方法1】通过 NuGet 安装。

  • 可以在Visual Studio中打开“解决方案资源管理器”,鼠标右键点击“引用”,“管理NuGet包”,然后搜索“Free Spire.PDF”,点击“安装”。
  • 也可以将以下内容复制到PM控制台安装:

          Install-Package FreeSpire.PDF -Version 7.8.9

【方法2】手动安装。

可通过手动下载 Free Spire.PDF for .NET 包,然后解压,找到BIN文件夹下的Spire.Pdf.dll。在Visual Studio中打开“解决方案资源管理器”,鼠标右键点击“引用”,“添加引用”,将本地路径BIN文件夹下的dll文件添加引用至程序。

 

添加过期时间

给PDF文档添加过期时间,主要通过以下几个步骤来完成:

  • 创建PdfDocument类的对象,并通过PdfDocument.LoadFromFile(string filename)方法加载PDF文档。
  • 通过JavaScript语句设置过期时间,过期警告信息并关闭文档等动作。
  • 初始化PdfJavaScriptAction类的实例,并通过PdfDocument.AfterOpenAction属性设置PDF打开后执行JS语句命令。
  • 最后,通过PdfDocument.SaveToFile(string filename, FileFormat fileFormat)方法保存PDF文档到指定路径。

C#

using Spire.Pdf;
using Spire.Pdf.Actions;

namespace SetExpiryDate
{
    class Program
    {
        static void Main(string[] args)
        {
            //创建PdfDocument类的对象,并加载PDF文档
            PdfDocument pdf = new PdfDocument();
            pdf.LoadFromFile("test.pdf");

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

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

            //将PdfJavaScriptAction设置为文档打开后的动作
            pdf.AfterOpenAction = js;

            //保存文档
            pdf.SaveToFile("SetExpiryDate.pdf", FileFormat.PDF);
        }
    }
}

VB.NET

Imports Spire.Pdf
Imports Spire.Pdf.Actions

Namespace SetExpiryDate
    Class Program
        Private Shared Sub Main(args As String())
            '创建PdfDocument类的对象,并加载PDF文档
            Dim pdf As New PdfDocument()
            pdf.LoadFromFile("test.pdf")

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

            '根据JS创建PdfJavaScriptAction 
            Dim js As New PdfJavaScriptAction(javaScript)

            '将PdfJavaScriptAction设置为文档打开后的动作
            pdf.AfterOpenAction = js

            '保存文档
            pdf.SaveToFile("SetExpiryDate.pdf", FileFormat.PDF)
        End Sub
    End Class
End Namespace

文档设置效果如图:

 

 

— End —

 

引用来源:https://www.cnblogs.com/Yesi/p/15816571.html

版权声明:本文为YES开发框架网发布内容,转载请附上原文出处连接
管理员
上一篇:.NET Core 自定义中间件 Middleware
下一篇:ArcEngine10.1直连Oracle
评论列表

发表评论

评论内容
昵称:
关联文章

C# 使用JavaScriptPDF文档设置过期时间
C# 设置或验证 PDF的文本域格式
C# 在PDF文档应用多种不同字体
C# 执行Javascript脚本
C# 将PDF转为线性化PDF
.net 简单实现在H5中将word、jpg、png转成PDFPDF添加水印并且控制样式和可视化编辑
C# 读取txt文件生成Word文档
C# 时间戳与 标准时间互转
DTCMS:html模板格式化时间
利用SelectPdf插件将网页生成PDF
javascriptlet和var的区别
使用.NET 6开发TodoList应用(27)——实现API的Swagger文档
混淆工具JavaScript obfuscator中文帮助文档
C#URL编码
C#爬虫:使用Selenium,Selenium配置指南
javascript删除html字符串的空行
C# 时间戳、随机数相关操作
兼容不同时区时间戳方案
C#】C#使用GDAL3(三):Windows下编译插件驱动
Http请求Referer的设置,CEFSharp带Referer请求

联系我们
联系电话:15090125178(微信同号)
电子邮箱:garson_zhang@163.com
站长微信二维码
微信二维码