Firmar PDF en Node.js Cloud API

API para trabajar con Firmas en documentos PDF usando Cloud Node.js SDK

Get Started

Cómo agregar Firma a PDF a través de Node.js SDK

Para agregar una firma en PDF, usaremos Aspose.PDF Cloud Node.js SDK. Este SDK en la nube ayuda a los programadores de Node.js a desarrollar aplicaciones de creación, anotación, edición y conversión de PDF basadas en la nube usando el lenguaje de programación Node.js a través de Aspose.PDF REST API. Simplemente cree una cuenta en Aspose for Cloud y obtenga la información de su aplicación. Una vez que tenga el App SID y la clave, estará listo para usar el Aspose.PDF Cloud Node.js SDK.

Comando de Consola del Administrador de Paquetes


     
    npm install asposepdfcloud --save
     
     

Pasos para agregar Firma en PDF a través de Cloud Node.js

Los desarrolladores de Aspose.PDF Cloud pueden cargar y agregar fácilmente Firmas a PDF en solo unas pocas líneas de código.

  1. Lea el archivo PDF local.
  2. Cargue el archivo PDF en el almacenamiento de Aspose PDF Cloud.
  3. Cree y agregue la Firma Digital
  4. Descargue el archivo PDF actualizado del almacenamiento de Aspose PDF Cloud.
 

Agregar Firma a PDF usando Node.js


    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 addSignature () {
            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.postSignatureField(configParams.PDF_DOCUMENT_NAME, field);

                if (response.body.code == 200)
                    console.log("addSignature(): Signature '" + configParams.SIGNATURE_CONTACT + "' successfully added to the document.");
                else
                    console.error("addSignature(): Failed to add signature to 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.addSignature();
            await pdfSignatures.downloadResult();
        } catch (error) {
            console.error("Error:", error.message);
        }
    }
 

Trabajar con Firmas en PDF

La firma digital de un PDF garantiza la autenticidad, integridad y legitimidad de un documento. Verifica que el contenido no ha sido alterado desde que se aplicó la firma y confirma la identidad del firmante. Esto es especialmente importante en entornos legales, financieros y profesionales donde la confianza y seguridad del documento son críticas. Las firmas digitales también ayudan a cumplir con los estándares de cumplimiento y agilizan los flujos de trabajo de aprobación de manera segura y verificable. Agregue la Firma en documentos PDF con Aspose.PDF Cloud Node.js SDK.

Con nuestra biblioteca de Node.js puede:

  • Agregar el encabezado y pie de página del documento PDF en formato de texto o imagen.
  • Agregar tablas y sellos (texto o imagen) a los documentos PDF.
  • Adjuntar múltiples documentos PDF a un archivo existente.
  • Trabajar con archivos adjuntos, anotaciones y campos de formulario en PDF.
  • Aplicar cifrado o descifrado a documentos PDF y establecer una contraseña.
  • Eliminar todos los sellos y tablas de una página o de todo el documento PDF.
  • Eliminar un sello o tabla específico del documento PDF por su ID.
  • Reemplazar una o varias instancias de texto en una página PDF o en todo el documento.
  • Amplio soporte para convertir documentos PDF a varios otros formatos de archivo.
  • Extraer varios elementos de archivos PDF y optimizar documentos PDF.
  • Puede probar nuestras aplicaciones gratuitas para probar la funcionalidad en línea.