La firma digitale è uno schema affidabile per verificare l’autenticità dei tuoi documenti. Le firme digitali sono spesso utilizzate per implementare le firme elettroniche. In questo articolo imparerai come firmare elettronicamente documenti PDF e Word con certificati digitali usando C#.
API .NET per firme digitali e certificati
Per la firma di documenti con il certificato digitale, userò l’API GroupDocs.Signature for .NET negli esempi C# di questo articolo. Oltre alla firma di documenti PDF, questa API supporta le firme digitali per documenti di elaborazione testi e formati di fogli di calcolo.
Scarica le DLL o il programma di installazione MSI dalla sezione download o installa l’API nella tua applicazione .NET tramite NuGet.
PM> Install-Package GroupDocs.Signature
Firma PDF con certificato digitale in C#
Dopo aver impostato l’ambiente, sei a poche righe dalla corretta firma dei tuoi documenti. Segui i passaggi seguenti per ottenere la firma del documento con il certificato digitale disponibile utilizzando C#.
- Inizializza l’oggetto Firma con il documento da firmare.
- Inizializza l’oggetto DigitalSignOptions con il file del certificato.
- Imposta le opzioni di segno richieste come password e posizione.
- Chiama il metodo Sign per firmare il documento con il certificato digitale.
L’esempio di codice seguente firma i documenti PDF con il certificato in C#.
// Firma PDF con certificato digitale in C#
using (Signature signature = new Signature("document.pdf"))
{
DigitalSignOptions options = new DigitalSignOptions("certificate.pfx");
{
ImageFilePath = "sampleImage.jpg", // Optional - Set image file path
Left = 50, // Set signature position
Top = 50,
Password = "GroupDocs" // Set Password
};
signature.Sign("signedDocument.pdf", options);
}
Firma con firma digitale utilizzando l’aspetto personalizzato in C#
La firma digitale può essere personalizzata per avere diverse presentazioni. Per l’aspetto personalizzato, le seguenti opzioni possono essere personalizzate utilizzando la classe PdfDigitalSignatureAppearance.
- Sfondo
- Informazioni di contatto
- Data firmata a
- Firmato digitale
- Posizione
- Motivo
- Famiglia di font
- Dimensione del font
Inoltre, puoi modificare le seguenti proprietà:
- Altezza
- Larghezza
- Stile del bordo
- Mostra su Tutte le pagine o Non
Nell’esempio seguente, sto usando quasi tutte le proprietà sopra menzionate. Questo esempio personalizza l’aspetto della firma digitale in un documento PDF usando C#.
// Firma PDF con certificato digitale in C# con aspetto e impostazione personalizzati
using (Signature signature = new Signature("document.pdf"))
{
DigitalSignOptions options = new DigitalSignOptions("certificate.pfx")
{
Password = "GroupDocs",
// dettagli del certificato digitale
Reason = "Approved",
Location = "New York",
// Aspetto personalizzato della firma PDF
Appearance = new PdfDigitalSignatureAppearance()
{
// Non mostrare i dettagli di contatto
ContactInfoLabel = string.Empty,
// Semplifica l'etichetta del motivo
ReasonLabel = "?",
// Cambia etichetta di posizione
LocationLabel = "From",
DigitalSignedLabel = "By",
DateSignedAtLabel = "On",
Background = Color.Red
},
AllPages = true,
Width = 160,
Height = 80,
// Imposta il bordo della firma
Border = new Border()
{
Visible = true,
Color = Color.Red,
DashStyle = DashStyle.DashDot,
Weight = 2
}
};
SignResult signResult = signature.Sign("signedDocument.pdf", options);
}
Firma documenti Word con certificato digitale in C#
Allo stesso modo, puoi firmare documenti Word usando il certificato. Fornisci semplicemente il documento giusto quando inizi con l’inizializzazione dell’oggetto Signature.
- Inizializza l’oggetto Firma con il documento di Word da firmare.
- Inizializza l’oggetto DigitalSignOptions con il file del certificato.
- Imposta opzioni di segno come password e posizione.
- Firma il documento con il certificato digitale utilizzando il metodo Sign.
L’esempio firma i documenti di Word usando il certificato in C#.
// Firma il documento Word con certificato digitale in C#
using (Signature signature = new Signature("document.docx"))
{
DigitalSignOptions options = new DigitalSignOptions("certificate.pfx");
{
ImageFilePath = "sampleImage.jpg", // Optional - Set image file path
Left = 50, // Set signature position
Top = 50,
Password = "GroupDocs" // Set Password
};
signature.Sign("signedDocument.docx", options);
}
Conclusione
In questo articolo hai imparato a firmare elettronicamente documenti PDF e Word con il certificato digitale usando C#. Inoltre, puoi personalizzare facilmente l’aspetto della firma. Ora puoi provare a creare la tua applicazione .NET per la firma di documenti PDF e Word con certificati digitali con un aspetto personalizzato in C#.
Collegamenti rapidi per ulteriori informazioni sull’API della firma
- Esempi su GitHub
- Guida per sviluppatori e documentazione
- Forum per supporto rapido