Analyzing your prompt, please hold on...
An error occurred while retrieving the results. Please refresh the page and try again.
La clase PdfFileSignature le permite agregar una firma en un archivo PDF. Necesita crear un objeto de la clase PdfFileSignature utilizando los archivos PDF de entrada y salida. También necesita crear un objeto Rectangle en el que desea agregar la firma y, para establecer la apariencia, puede especificar una imagen utilizando la propiedad SignatureAppearance del objeto PdfFileSignature. Aspose.Pdf.Facades también proporciona diferentes tipos de firmas como PKCS#1, PKCS#7 y PKCS#7Detached. Para crear una firma de un tipo específico, necesita crear un objeto de la clase particular como PKCS1, PKCS7 o PKCS7Detached utilizando el archivo de certificado y la contraseña.
Una vez que se crea el objeto de un tipo de firma particular, puede utilizar el método Sign de la clase PdfFileSignature para firmar el PDF y pasar el objeto de firma particular a esta clase. También puede especificar otros atributos para este método. Finalmente, necesita guardar el PDF firmado utilizando el método Save de la clase PdfFileSignature. El siguiente fragmento de código le muestra cómo agregar una firma en un archivo PDF.
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void AddPdfFileSignature()
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf_SecuritySignatures();
using (var pdFileSignature = new Aspose.Pdf.Facades.PdfFileSignature())
{
// Bind PDF document
pdFileSignature.BindPdf(dataDir + "input.pdf");
// Create a rectangle for signature location
System.Drawing.Rectangle rect = new System.Drawing.Rectangle(10, 10, 300, 50);
// Set signature appearance
pdFileSignature.SignatureAppearance = dataDir + "aspose-logo.png";
// Create any of the three signature types
var signature = new PKCS1(dataDir + "rsa_cert.pfx", "12345"); // PKCS#1
pdFileSignature.Sign(1, "I'm document author", "test01@aspose-pdf-demo.local", "Aspose Pdf Demo, Australia", true, rect, signature);
// Save PDF document
pdFileSignature.Save(dataDir + "DigitallySign_out.pdf");
}
}
El siguiente ejemplo de código nos muestra la capacidad de firmar un documento con dos firmas. En nuestro ejemplo, colocamos la primera firma en la primera página y la segunda en la segunda página. Puede especificar las páginas que necesita.
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void AddTwoSignature()
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf_SecuritySignatures();
using (var pdFileSignature = new Aspose.Pdf.Facades.PdfFileSignature())
{
// Bind PDF document
pdFileSignature.BindPdf(dataDir + "input.pdf");
// Create a rectangle for 1st signature location
System.Drawing.Rectangle rect1 = new System.Drawing.Rectangle(10, 10, 300, 50);
// Create 1st signature object
var signature1 = new Aspose.Pdf.Forms.PKCS1(dataDir + "rsa_cert.pfx", "12345"); // PKCS#1
pdFileSignature.Sign(1, "I'm document author", "test@aspose-pdf-demo.local", "Aspose Pdf Demo, Australia", true, rect1, signature1);
pdFileSignature.Save(dataDir + "DigitallySign_out.pdf");
// Sign with 2nd signature
// Bind PDF document
pdFileSignature.BindPdf(dataDir + "DigitallySign_out.pdf");
// Create a rectangle for 2nd signature location
System.Drawing.Rectangle rect2 = new System.Drawing.Rectangle(10, 10, 300, 50);
// Create 2nd signature object
var signature2 = new Aspose.Pdf.Forms.PKCS1(dataDir + "rsa_cert.pfx", "12345"); // PKCS#1
pdFileSignature.Sign(2, "I'm document reviewer", "test02@aspose-pdf-demo.local", "Aspose Pdf Demo, Australia", true, rect2, signature2);
// Save PDF document
pdFileSignature.Save(dataDir + "DigitallySign2_out.pdf");
}
}
Para un documento con formularios o acroformularios que necesita ser firmado, consulte el siguiente ejemplo. Necesita crear un objeto de la clase PdfFileSignature utilizando los archivos PDF de entrada y salida. Utilice BindPdf para vincular. Cree una firma con la capacidad de agregar las propiedades requeridas. En nuestro ejemplo, son ‘Reason’ y ‘CustomAppearance’.
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void AddPdfFileSignatureField()
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf_SecuritySignatures();
using (var pdFileSignature = new Aspose.Pdf.Facades.PdfFileSignature())
{
// Bind PDF document
pdFileSignature.BindPdf(dataDir + "input.pdf");
// Create any of the three signature types
var signature = new Aspose.Pdf.Forms.PKCS1(dataDir + "rsa_cert.pfx", "12345")
{
Reason = "Sign as Author",
CustomAppearance = new Aspose.Pdf.Forms.SignatureCustomAppearance
{
FontSize = 6,
FontFamilyName = "Calibri"
}
}; // PKCS#1
pdFileSignature.Sign("Signature1", signature);
// Save PDF document
pdFileSignature.Save(dataDir + "DigitallySign_out.pdf");
}
}
Si nuestro documento tiene dos campos, el algoritmo para firmarlo es similar al primer ejemplo.
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void AddPdfFileSignatureField2()
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf_SecuritySignatures();
using (var pdFileSignature = new Aspose.Pdf.Facades.PdfFileSignature())
{
// Bind PDF document
pdfFileSignature.BindPdf(dataDir + "input.pdf");
// Create any of the three signature types
var signature1 = new Aspose.Pdf.Forms.PKCS1(dataDir + "rsa_cert.pfx", "12345")
{
Reason = "Sign as Author",
CustomAppearance = new Aspose.Pdf.Forms.SignatureCustomAppearance
{
FontSize = 6
}
}; // PKCS#1
pdFileSignature.Sign("Signature1", signature1);
// Save PDF document
pdFileSignature.Save(dataDir + "DigitallySign_out.pdf");
// Bind PDF document
pdFileSignature.BindPdf(dataDir + "DigitallySign_out.pdf");
// Create any of the three signature types
var signature2 = new Aspose.Pdf.Forms.PKCS1(dataDir + "rsa_cert.pfx", "12345")
{
Reason = "Sign as Reviwer",
CustomAppearance = new SignatureCustomAppearance
{
FontSize = 6
}
}; // PKCS#1
pdFileSignature.Sign("Signature2", signature2);
// Save PDF document
pdFileSignature.Save(dataDir + "DigitallySign2_out.pdf");
}
}
Analyzing your prompt, please hold on...
An error occurred while retrieving the results. Please refresh the page and try again.