HTML
JPG
PDF
XML
DOCX
PDF
如何通过 Node.js SDK 替换 PDF 中的签名
要替换 PDF 中的签名,我们将使用 Aspose.PDF Cloud Node.js SDK。此云 SDK 帮助 Node.js 程序员使用 Aspose.PDF REST API 开发基于云的 PDF 创建、注释、编辑和转换应用程序。只需在 Aspose for Cloud 创建一个帐户并获取您的应用信息。一旦您拥有 App SID 和密钥,您就可以准备使用 Aspose.PDF Cloud Node.js SDK。
包管理器控制台命令
npm install asposepdfcloud --save
通过云 Node.js 替换 PDF 中签名的步骤
Aspose.PDF Cloud 开发人员可以轻松地在 PDF 中加载和替换签名,只需几行代码。
- 上传 PDF 文档
- 创建和配置签名
- 创建签名字段
- 替换 PDF 中的签名
- 下载修改后的 PDF
- 从 Aspose PDF Cloud 存储下载更新后的 PDF 文件。
使用 Node.js 替换 PDF 中的签名
import credentials from "../../../Credentials/credentials.json" with { type: "json" };
import fs from 'node:fs/promises';
import path from 'node:path';
import { PdfApi } from "../../src/api/api.js";
import {Signature} from "../../src/models/signature.js";
import {SignatureType} from "../../src/models/signatureType.js";
import {SignatureField} from "../../src/models/signatureField.js";
const configParams = {
LOCAL_FOLDER: "C:\\Samples\\",
PDF_DOCUMENT_NAME: "sample.pdf",
LOCAL_RESULT_DOCUMENT_NAME: "output_sample.pdf",
LOCAL_SIGNATURE_PATH: "C:\\Samples\\Signatures\\3",
SIGNATURE_PFX: "signature.pfx",
SIGNATURE_FORM_FIELD: 'Signature_1',
SIGNATURE_PASSWORD: 'Password',
SIGNATURE_CONTACT: 'Contact',
SIGNATURE_LOCATION: 'Location',
SIGNATURE_AUTHORITY: 'Issuer',
SIGNATURE_DATE: '04/19/2025 12:15:00.000 PM',
SIGNATURE_RECT: { lLx: 100, lLy: 100, uRx: 500, uRy: 500 }
};
const pdfApi = new PdfApi(credentials.id, credentials.key);
const pdfSignatures = {
async uploadFile (folder, fileName) {
const fileNamePath = path.join(folder, fileName);
const pdfFileData = await fs.readFile(fileNamePath);
await pdfApi.uploadFile(fileName, pdfFileData);
console.log("File '" + fileName + "' successfully uploaded!");
},
async uploadDocument () {
await this.uploadFile(configParams.LOCAL_FOLDER, configParams.PDF_DOCUMENT_NAME);
},
async downloadResult () {
const changedPdfData = await pdfApi.downloadFile(configParams.PDF_DOCUMENT_NAME);
const filePath = path.join(configParams.LOCAL_FOLDER, configParams.LOCAL_RESULT_DOCUMENT_NAME);
await fs.writeFile(filePath, changedPdfData.body);
console.log("Downloaded: " + filePath);
},
async replaceSignature () {
if (pdfApi)
{
const signature = new Signature();
signature.authority = configParams.SIGNATURE_AUTHORITY;
signature.contact = configParams.SIGNATURE_CONTACT;
signature.date = configParams.SIGNATURE_DATE;
signature.formFieldName = configParams.SIGNATURE_FORM_FIELD;
signature.location = configParams.SIGNATURE_LOCATION;
signature.password = configParams.SIGNATURE_PASSWORD;
signature.rectangle = configParams.SIGNATURE_RECT;
signature.signaturePath = configParams.SIGNATURE_PFX;
signature.signatureType = SignatureType.PKCS7;
signature.visible = true;
const field = new SignatureField();
field.pageIndex = 1;
field.signature = signature;
field.partialName = 'sign1';
field.rect = configParams.SIGNATURE_RECT;
const response = await pdfApi.putSignatureField(configParams.PDF_DOCUMENT_NAME, configParams.SIGNATURE_FORM_FIELD, field);
if (response.body.code == 200)
console.log("replaceSignature(): Signature '" + configParams.SIGNATURE_CONTACT + "' successfully replaced in the document.");
else
console.error("replaceSignature(): Failed to replace signature in the document. Response code: " + response.body.code);
}
},
}
async function main() {
try {
await pdfSignatures.uploadFile(configParams.LOCAL_SIGNATURE_PATH, configParams.SIGNATURE_PFX);
await pdfSignatures.uploadDocument();
await pdfSignatures.replaceSignature();
await pdfSignatures.downloadResult();
} catch (error) {
console.error("Error:", error.message);
}
}
处理 PDF 中的签名
当原始签名过时、错误或无效时,替换 PDF 中的签名是必要的。此过程确保文档反映出最准确和授权的信息。替换的常见原因包括更新签名者凭据、纠正签名详细信息中的错误、在文档更改后重新签名,或切换到更强的数字证书以增强安全性和合规性。替换签名有助于保持文档的真实性、完整性和法律有效性。 使用 Aspose.PDF Cloud Node.js SDK 替换 PDF 文档中的签名。
使用我们的 Node.js 库,您可以:
- 添加 PDF 文档的文本或图像格式的页眉和页脚。
- 向 PDF 文档添加表格和印章(文本或图像)。
- 将多个 PDF 文档附加到现有文件。
- 处理 PDF 附件、注释和表单字段。
- 对 PDF 文档进行加密或解密并设置密码。
- 删除页面或整个 PDF 文档中的所有印章和表格。
- 根据其 ID 从 PDF 文档中删除特定印章或表格。
- 替换 PDF 页面或整个文档中的单个或多个文本实例。
- 广泛支持将 PDF 文档转换为各种其他文件格式。
- 提取 PDF 文件的各种元素并优化 PDF 文档。
- 您可以尝试我们的免费应用在线测试功能。