Assinar PDF na API Cloud Node.js

API para trabalhar com Assinatura em documentos PDF usando Cloud Node.js SDK

Get Started

Como adicionar Assinatura a PDF via Node.js SDK

Para adicionar assinatura em PDF, usaremos Aspose.PDF Cloud Node.js SDK. Este SDK Cloud auxilia programadores Node.js a desenvolver aplicativos de criação, anotação, edição e conversão de PDFs baseados em nuvem usando a linguagem de programação Node.js através da Aspose.PDF REST API. Basta criar uma conta em Aspose for Cloud e obter as informações do seu aplicativo. Assim que tiver o App SID & key, você estará pronto para usar o Aspose.PDF Cloud Node.js SDK.

Comando do Console do Gerenciador de Pacotes


     
    npm install asposepdfcloud --save
     
     

Passos para adicionar Assinatura em PDF via Cloud Node.js

Os desenvolvedores Aspose.PDF Cloud podem facilmente carregar e adicionar Assinatura a PDF com apenas algumas linhas de código.

  1. Leia o arquivo PDF local.
  2. Carregue o arquivo PDF no armazenamento Aspose PDF Cloud.
  3. Crie e Adicione a Assinatura Digital
  4. Baixe o arquivo PDF atualizado do armazenamento Aspose PDF Cloud.
 

Adicionar Assinatura 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);
        }
    }
 

Trabalhar com Assinatura em PDF

Assinar digitalmente um PDF garante a autenticidade, integridade e legitimidade de um documento. Verifica que o conteúdo não foi alterado desde que a assinatura foi aplicada e confirma a identidade do assinante. Isso é especialmente importante em ambientes legais, financeiros e profissionais onde a confiança e a segurança dos documentos são críticas. Assinaturas digitais também ajudam a atender a padrões de conformidade e agilizar fluxos de trabalho de aprovação de maneira segura e verificável. Adicione a Assinatura em documentos PDF com Aspose.PDF Cloud Node.js SDK.

Com nossa biblioteca Node.js você pode:

  • Adicionar cabeçalho e rodapé de documentos PDF em formato de texto ou imagem.
  • Adicionar tabelas e carimbos (texto ou imagem) a documentos PDF.
  • Anexar vários documentos PDF a um arquivo existente.
  • Trabalhar com anexos, anotações e campos de formulário de PDF.
  • Aplicar criptografia ou descriptografia a documentos PDF e definir uma senha.
  • Excluir todos os carimbos e tabelas de uma página ou de todo o documento PDF.
  • Excluir um carimbo ou tabela específico do documento PDF pelo seu ID.
  • Substituir instâncias únicas ou múltiplas de texto em uma página PDF ou em todo o documento.
  • Suporte extensivo para converter documentos PDF em vários outros formatos de arquivo.
  • Extrair vários elementos de arquivos PDF e otimizar documentos PDF.
  • Você pode experimentar nossos Aplicativos gratuitos para testar a funcionalidade online.