Tento rychlý výukový program jak přidat podpis do Wordu pomocí C# sdílením podrobností o konfiguraci, podrobných kroků a spustitelného ukázkového kódu, který používá zdrojový dokument aplikace Word, úložiště PKCS12 a jeho heslo. Před podepsáním dokumentu můžete nastavit řadu vlastností, které jsou pro uživatele viditelné pro jejich referenci. Jakmile vložíte elektronický podpis do Wordu pomocí C#, lze jej uložit v jakémkoli z podporovaných formátů, jako je DOCX, DOC atd.
Kroky pro přidání podpisu do Wordu pomocí C#
- Nakonfigurujte vývojové prostředí tak, aby přidalo Aspose.Words pomocí správce balíčků NuGet k podepisování dokumentů
- Načtěte certifikát PFX pomocí třídy CertificateHolder zadáním cesty k souboru a hesla
- Nastavte komentáře a čas podpisu pomocí objektu SignOptions
- Načtěte zdrojový soubor Word pomocí FileStream
- Podepište načtený dokument pomocí metody Sign ve třídě DigitalSignatureUtil
- Vložte podepsaný dokument a ověřte informace o podpisu
Tyto kroky popisují proces přidání digitálního podpisu do Wordu pomocí C# sdílením všech požadovaných tříd a metod. Potřebujeme načíst certifikát spolu s heslem a poté nastavit několik vlastností, jako jsou komentáře autority podpisu, datum a čas podpisu, obrázek řádku podpisu a ID poskytovatele. Nakonec dokument podepíšeme pomocí třídy DigitalSignatureUtil a dokument uložíme na disk, poslední krok je však volitelný, kde jsme demonstrovali ověření podpisu načtením podepsaného dokumentu zpět a zobrazením jeho informací.
Kód pro podepisování dokumentů Word pomocí C#
using System; | |
using System.IO; | |
using Aspose.Words.DigitalSignatures; | |
namespace AsposeWords | |
{ | |
class Program | |
{ | |
static void Main(string[] args) // Main function to add signature in Word using C# | |
{ | |
//Initialize a license | |
Aspose.Words.License lic = new Aspose.Words.License(); | |
lic.SetLicense(@"Aspose.Total.lic"); | |
// Create a certificate | |
CertificateHolder certificate = CertificateHolder.Create("certificate.pfx", "mypass"); | |
// Set options | |
SignOptions options = new SignOptions { Comments = "Signing Authority Comments", SignTime = new DateTime(2022,6,5,13,30,0) }; | |
// Add Signature | |
using (Stream inputStream = new FileStream("InputDocx.docx", FileMode.Open)) | |
{ | |
using (Stream outputStream = new FileStream("SignedOutput.docx", FileMode.OpenOrCreate)) | |
{ | |
DigitalSignatureUtil.Sign(inputStream, outputStream, certificate, options); | |
} | |
} | |
// Load and display signature information | |
using (Stream stream = new FileStream("SignedOutput.docx", FileMode.Open)) | |
{ | |
DigitalSignature sign = DigitalSignatureUtil.LoadSignatures(stream)[0]; | |
Console.WriteLine($@"IsValid={sign.IsValid}, Comments:{sign.Comments},IssuerName:{sign.IssuerName}"); | |
} | |
System.Console.WriteLine("Done"); | |
} | |
} | |
} |
Tento kód ukazuje jak vložit podpis do Wordu pomocí C# pomocí třídy DigitalSignatureUtil. Podporuje mnoho dalších funkcí, stejně jako odstranění všech podpisů ze souboru aplikace Word pro jeho úpravu. Podobně třída DigitalSignature, která se používá k získání odkazu na podpis v načteném dokumentu, obsahuje řadu vlastností, jako je čas podpisu, komentáře, název předmětu a jméno vydavatele.
Tento tutoriál nás navedl k přidání podpisu do Wordu pomocí C#. Pokud máte zájem o vytvoření souboru Word od začátku, přečtěte si článek na jak vytvořit dokument Word v C#.