Este tutorial preciso elabora os detalhes sobre como adicionar assinatura digital a PDF em Java. Abrange todos os detalhes básicos sobre como usar o documento Java sign PDF com um arquivo de certificado. Além disso, não precisamos instalar nenhuma outra ferramenta para integrar o recurso de assinatura de PDF em aplicativos de processamento de PDF.
Etapas para adicionar assinatura digital a PDF em Java
- Adicione a referência à biblioteca Aspose.PDF for Java no projeto para assinar digitalmente um arquivo PDF
- Carregue o arquivo PDF de destino no objeto de classe Document para assiná-lo
- Inicialize o objeto de classe PKCS7 para carregar o arquivo de certificado de entrada
- Especifique as coordenadas do retângulo e defina a imagem de aparência para a assinatura
- Assine o documento com o método de certificação e salve o arquivo de saída
Estas etapas resumem como adicionar uma assinatura digital em PDF usando Java. Você pode controlar o número da página, bem como as coordenadas retangulares para colocar as assinaturas digitais. Da mesma forma, você pode controlar a aparência da assinatura, como imagem, motivo, detalhes de contato, etc. ao assinar um documento PDF.
Código para adicionar assinatura digital a PDF em Java
import com.aspose.pdf.Document; | |
import com.aspose.pdf.License; | |
public class AddDigitalSignatureToPDFInJava { | |
public static void main(String[] args) throws Exception { // main function to add digital signature to PDF in Java | |
// Instantiate the license to avoid watermark in the output signed PDF | |
License licSignPdf = new License(); | |
licSignPdf.setLicense("Aspose.Pdf.lic"); | |
// Load the input PDF document to be signed | |
Document doc = new Document("input.pdf"); | |
// Create signature class object for the loaded document | |
com.aspose.pdf.facades.PdfFileSignature signature = new com.aspose.pdf.facades.PdfFileSignature(doc); | |
// Load the certificate along with the password | |
com.aspose.pdf.PKCS7 pkcs = new com.aspose.pdf.PKCS7("certificate1.pfx", "123456789"); | |
com.aspose.pdf.DocMDPSignature docMdpSignature = new com.aspose.pdf.DocMDPSignature(pkcs, com.aspose.pdf.DocMDPAccessPermissions.FillingInForms); | |
// Define the rectangle for the signature on the PDF | |
java.awt.Rectangle rect = new java.awt.Rectangle(150, 650, 450, 150); | |
// Set signature appearance by loading an image | |
signature.setSignatureAppearance("aspose-logo.png"); | |
// Sign the PDF file with the certify method | |
signature.certify(1, "Reason for the signature", "Contact Info", "Location where it is signed", true, rect, docMdpSignature); | |
// Save digitally signed PDF file | |
signature.save("Digitally Signed PDF.pdf"); | |
System.out.println("Done"); | |
} | |
} |
Este exemplo de código em Java assina PDF com certificado onde precisamos especificar a senha para o arquivo de certificado PFX. Além disso, este código pode ser improvisado conforme suas necessidades. Por exemplo, você pode decidir carregar um arquivo PDF de entrada para adicionar uma assinatura digital a ele ou inicializar um documento em branco para trabalhar com ele e assiná-lo usando a classe PdfFileSignature.
Neste artigo, exploramos a adição de assinaturas digitais a PDF em Java. Considerando que, se você quiser entender o processo de proteção de PDF com uma senha, acesse o artigo em como proteger PDF com senha em Java.