跳至页脚内容
使用 IRONPDF FOR NODE.JS
如何在 Node.js 中签署 PDF 文件

如何在 Node.js 中签署 PDF 文件

在现代文档管理领域中,程序化地签署PDF已成为无数应用程序的基本特性。 Node.js是一个强大的服务器端JavaScript运行环境,为开发人员提供了一个多功能的平台,以集成无缝的PDF签名功能。 无论是电子合同、法律文件,还是其他关键文书,签署PDF NodeJS的方法使开发人员能够自动化并简化数字签名过程。 此介绍探讨了使用Node.js签署PDF的重要性,强调了其在促进安全、高效且具有法律约束力的数字交易中的重要性。

在本文中,我们将讨论如何使用Node.js数字签署PDF文档。 为此,我们将使用顶级的Node.js PDF库,名为IronPDF

1. 如何使用Node.js签署PDF文档

  1. 安装用于Node.js中签署PDF的PDF库。
  2. 导入所需的依赖项。
  3. 使用fromFile方法打开PDF文件。
  4. 使用signDigitalSignature方法签署PDF文件。
  5. 使用isSigned方法检查PDF文件是否已签署。
  6. 使用signatureCount函数查找数字签名的数量。
  7. 使用saveAs方法保存已签署的PDF文件。

2. IronPDF For Node.js

在不断发展的Web开发环境中,Node.js应用程序中动态且无缝PDF生成的需求变得日益重要。 引入IronPDF for Node.js — 它是IronPDF复杂PDF处理能力与Node.js灵活性的强大结合。 此创新解决方案使开发人员能够轻松创建、操作和渲染高质量的PDF文档,提供了从报告生成到制作动态发票的一整套工具。 这个介绍深入探讨了IronPDF for Node.js的能力,强调了其作为开发人员寻找高效和功能丰富的PDF处理的宝贵资产。

3. 安装IronPDF库用于Node.js

从npm安装IronPDF库用于Node.js以开始使用数字签名签署PDF文档。 在控制台上运行以下命令以安装IronPDF库。

npm install @ironsoftware/ironpdf
npm install @ironsoftware/ironpdf
SHELL

要安装使用IronPDF库必需的IronPDF引擎,请在控制台上运行以下命令。

npm install @ironsoftware/ironpdf-engine-windows-x64
npm install @ironsoftware/ironpdf-engine-windows-x64
SHELL

4. 程序化地数字签署PDF文档

使用Node.js中的IronPDF程序化地数字签署PDF涉及利用库的功能在PDF文档中嵌入数字签名。 以下是一个简化的示例,可以实现这一目标:

import { PdfDocument } from "@ironsoftware/ironpdf";
import { IronPdfGlobalConfig } from "@ironsoftware/ironpdf";

// Asynchronous function to create and sign PDFs
(async function createPDFs() {
  // Input the license key
  const IronPdfConfig = {
    licenseKey: "License-Key", // Replace with your actual license
  };

  // Set the global configuration with the license key
  IronPdfGlobalConfig.setConfig(IronPdfConfig);

  // Define the digital signature parameters
  var digitalSignature = {
    signatureImage: {
      SignatureImagePath: "signature.png" // Path to the signature image
    },
    certificatePath: "WALEED.pfx", // Path to the certificate file
    certificatePassword: "nokhanok" // Password for the certificate
  };

  // Open the PDF document that will be signed
  await PdfDocument.fromFile("output.pdf").then(async (pdf) => {
    // Sign the PDF file with the digital signature
    await pdf.signDigitalSignature(digitalSignature);

    // Check if the PDF is signed successfully
    var signed = await pdf.isSigned();
    if (signed) {
      console.log("\nThe document is successfully signed");
    }

    // Save the signed PDF document
    await pdf.saveAs("sample-contract-signed.pdf");
  });
})();
import { PdfDocument } from "@ironsoftware/ironpdf";
import { IronPdfGlobalConfig } from "@ironsoftware/ironpdf";

// Asynchronous function to create and sign PDFs
(async function createPDFs() {
  // Input the license key
  const IronPdfConfig = {
    licenseKey: "License-Key", // Replace with your actual license
  };

  // Set the global configuration with the license key
  IronPdfGlobalConfig.setConfig(IronPdfConfig);

  // Define the digital signature parameters
  var digitalSignature = {
    signatureImage: {
      SignatureImagePath: "signature.png" // Path to the signature image
    },
    certificatePath: "WALEED.pfx", // Path to the certificate file
    certificatePassword: "nokhanok" // Password for the certificate
  };

  // Open the PDF document that will be signed
  await PdfDocument.fromFile("output.pdf").then(async (pdf) => {
    // Sign the PDF file with the digital signature
    await pdf.signDigitalSignature(digitalSignature);

    // Check if the PDF is signed successfully
    var signed = await pdf.isSigned();
    if (signed) {
      console.log("\nThe document is successfully signed");
    }

    // Save the signed PDF document
    await pdf.saveAs("sample-contract-signed.pdf");
  });
})();
JAVASCRIPT

此Node.js脚本利用IronPDF库来数字签署PDF文档。 在设置了IronPDF配置并提供许可证密钥后,代码定义了一个数字签名,指定了签名图像路径、证书路径和关联的密码。

随后,它打开一个现有的PDF文件("output.pdf"),用定义的数字签名签署它,检查签署过程是否成功,并将签署的文档保存为"sample-contract-signed.pdf"。 该脚本提供了一个简化且程序化高效的解决方案,用于在Node.js环境中为PDF应用数字签名。

在Node.js中签署PDF文件,图1:文档成功签署 文档签署成功

4.1. 验证已签署的PDF文档

要在Node.js中使用IronPDF验证已签署的PDF文档,可以使用以下代码片段。 假设您有已签署的PDF文件以及与数字签名关联的公钥。

import { PdfDocument } from "@ironsoftware/ironpdf";
import { IronPdfGlobalConfig } from "@ironsoftware/ironpdf";

// Asynchronous function to verify signed PDFs
(async function verifyPDFs() {
  // Configure IronPDF with a license key
  const IronPdfConfig = {
    licenseKey: "License-Key", // Replace with your actual license
  };

  // Set the global configuration
  IronPdfGlobalConfig.setConfig(IronPdfConfig);

  // Open the signed PDF document
  await PdfDocument.fromFile("sample-contract-signed.pdf").then(async (pdf) => {
    // Check if the PDF is signed
    var signed = await pdf.isSigned();
    if (signed) {
      console.log("\nThe document is signed");
    }
  });
})();
import { PdfDocument } from "@ironsoftware/ironpdf";
import { IronPdfGlobalConfig } from "@ironsoftware/ironpdf";

// Asynchronous function to verify signed PDFs
(async function verifyPDFs() {
  // Configure IronPDF with a license key
  const IronPdfConfig = {
    licenseKey: "License-Key", // Replace with your actual license
  };

  // Set the global configuration
  IronPdfGlobalConfig.setConfig(IronPdfConfig);

  // Open the signed PDF document
  await PdfDocument.fromFile("sample-contract-signed.pdf").then(async (pdf) => {
    // Check if the PDF is signed
    var signed = await pdf.isSigned();
    if (signed) {
      console.log("\nThe document is signed");
    }
  });
})();
JAVASCRIPT

此Node.js脚本使用IronPDF库来处理PDF文件,重点处理名为"sample-contract-signed.pdf"的文件。 最初,IronPDF配置设置了一个特定的许可证密钥。 随后,脚本加载PDF文档,通过isSigned方法检查其是否已数字签署,并记录一条消息以指示签署状态。

在Node.js中签署PDF文件,图2:文档已签署 文档已签署

4.2. 计算数字签名的数量

要在Node.js中使用IronPDF计算PDF文档中的数字签名数量,可以使用以下代码片段:

import { PdfDocument } from "@ironsoftware/ironpdf";

// Asynchronous function to count signatures in a PDF
(async function countSignatures() {
  // Open the PDF document
  await PdfDocument.fromFile("sample-contract-signed.pdf").then(async (pdf) => {
    // Count the number of signatures in the PDF
    var numberOfSignatures = await pdf.signatureCount();
    console.log("Number of Signatures: " + numberOfSignatures);
  });
})();
import { PdfDocument } from "@ironsoftware/ironpdf";

// Asynchronous function to count signatures in a PDF
(async function countSignatures() {
  // Open the PDF document
  await PdfDocument.fromFile("sample-contract-signed.pdf").then(async (pdf) => {
    // Count the number of signatures in the PDF
    var numberOfSignatures = await pdf.signatureCount();
    console.log("Number of Signatures: " + numberOfSignatures);
  });
})();
JAVASCRIPT

此简洁的Node.js脚本使用IronPDF库打开名为"sample-contract-signed.pdf"的PDF文档。 利用PdfDocument.fromFile方法,接着异步地使用signatureCount方法计算PDF中的数字签名数量。 结果的数量被记录在控制台中,提供了一种简单有效的方式来检索和显示指定PDF文件中存在的数字签名数量。此代码示例体现了IronPDF如何让开发人员以编程方式轻松与PDF文档交互并提取有价值信息。

在Node.js中签署PDF文件,图3:签名数量 签名数量

5. 结论

总之,Node.js和IronPDF的集成被证明是解决PDF文档管理领域中各种挑战的强大解决方案。 从最初探索Node.js中程序化签署PDF的重要性,到详细展示如何利用IronPDF进行动态的PDF生成和数字签名应用,本指南旨在为开发人员提供高效文件处理的基本工具。

IronPDF库的安装过程及其数字签署和验证PDF以及计算数字签名数量的实际示范,突出了这个组合的多样性和简单性。 通过无缝结合Node.js和IronPDF的优势,开发人员能够提升其处理PDF文档的能力,确保在各种应用程序场景中安全且流畅的操作。

IronPDF for Node.js offers a 免费试用。 欲了解商业许可证的更多详情,请访问许可证页面。 要开始使用IronPDF,请访问文档页面。 Sign PDF Node.js的代码示例可以在该Node.js示例链接找到。 有关如何使用IronPDF for Node.js的更多代码示例,请访问这些示例页面

常见问题解答

在 Node.js 中签署 PDF 的意义是什么?

在 Node.js 中签署 PDF 对于自动化和简化数字签署流程尤其重要,特别是对于电子合同和法律文件。IronPDF for Node.js 提供功能以编程方式安全地签署和管理 PDF。

如何在 Node.js 中以编程方式签署 PDF?

您可以通过使用 IronPDF 在 Node.js 中以编程方式签署 PDF。首先,安装 IronPDF 库,然后使用 fromFile 方法加载您的 PDF,使用 signDigitalSignature 应用数字签名,并在保存文档之前使用 isSigned 进行验证。

在 Node.js 中用于管理 PDF 签名的方法是什么?

在 Node.js 中,IronPDF 提供了多种用于管理 PDF 签名的方法,包括用于应用签名的 signDigitalSignature,用于验证的 isSigned,以及用于计算文档中签名数量的 signatureCount

如何安装 IronPDF 以处理 Node.js 应用程序中的 PDF?

要安装用于在 Node.js 应用程序中处理 PDF 的 IronPDF,请运行 npm install @ironsoftware/ironpdf。您可能还需要 npm install @ironsoftware/ironpdf-engine-windows-x64 用于 IronPDF 引擎。

适用于 Node.js 的 PDF 库有哪些功能?

IronPDF for Node.js 提供动态 PDF 生成、文本和图像操作、文档合并、分割、加密和数字签名管理等功能,是一个完整的 PDF 处理解决方案。

我可以使用 Node.js 验证 PDF 是否已数字签名吗?

可以,使用 Node.js 中的 IronPDF,您可以通过采用 isSigned 方法验证 PDF 是否已数字签名,以确保文件的真实性。

Node.js PDF 库是否提供免费试用?

是的,IronPDF for Node.js 提供免费试用,允许开发人员在购买之前探索其功能和能力。

在哪里可以找到用于 Node.js 的 PDF 库的文档和示例?

您可以在 IronPDF 官方网站上找到全面的文档和示例,这些文档和示例为 Node.js 使用 IronPDF 提供详细指南和教程。

在 Node.js 中使用 IronPDF 签署 PDF 的优点是什么?

IronPDF 通过提供易于使用的方法来应用和验证签名,简化了在 Node.js 中签署 PDF 的过程,确保了开发人员的文档管理安全且高效。

Darrius Serrant
全栈软件工程师(WebOps)

Darrius Serrant 拥有迈阿密大学的计算机科学学士学位,目前在 Iron Software 担任全栈 WebOps 市场工程师。从小就被编码吸引,他认为计算机既神秘又易于接触,使其成为创意和问题解决的理想媒介。

在 Iron Software,Darrius 喜欢创造新事物,并简化复杂概念以使其更易理解。作为我们常驻的开发者之一,他还自愿教授学生,与下一代分享他的专业知识。

对于 Darrius 来说,他的工作令人满意,因为它被重视并产生真正的影响。