Този бърз урок ръководи как да добавите подпис в Word с помощта на C# чрез споделяне на подробности за конфигурацията, подробни стъпки и изпълним примерен код, който използва изходния документ на Word, PKCS12 магазин и неговата парола. Можете да зададете редица свойства, преди да подпишете документа, който е видим за потребителите за справка. След като вмъкнете електронен подпис в Word с помощта на C#, той може да бъде записан във всеки от поддържаните формати като DOCX, DOC и др.
Стъпки за добавяне на подпис в Word с помощта на C#
- Конфигурирайте средата за разработка, за да добавите Aspose.Words с помощта на мениджъра на пакети NuGet за подписване на документи
- Заредете PFX сертификата с помощта на класа CertificateHolder, като предоставите пътя на файла и паролата
- Задайте коментари и време за подписване с помощта на обекта SignOptions
- Заредете изходния Word файл с помощта на FileStream
- Подпишете заредения документ с помощта на метода Sign в класа DigitalSignatureUtil
- Заредете подписания документ и проверете информацията за подписа
Тези стъпки описват процеса за добавяне на цифров подпис в Word с помощта на C# чрез споделяне на всички необходими класове и методи. Трябва да заредим сертификата заедно с паролата и след това да зададем няколко свойства като коментари от подписващия орган, дата-час на подписване, изображение на линия за подпис и идентификатор на доставчик. Накрая подписваме документа с помощта на класа DigitalSignatureUtil и записваме документа на диска, но последната стъпка не е задължителна, където сме демонстрирали проверката на подписа чрез зареждане на подписания документ обратно и показване на информацията за него.
Код за подписване на Word документи с помощта на 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"); | |
} | |
} | |
} |
Този код демонстрира как да вмъкнете подпис в Word с помощта на C# с помощта на класа DigitalSignatureUtil. Той поддържа много други функции, както и премахване на всички подписи от файл на Word за модифицирането му. По същия начин класът DigitalSignature, който се използва за получаване на препратка към подписа в заредения документ, съдържа редица свойства като време на подписване, коментари, име на субект и име на издател.
Този урок ни напътства да добавим подпис към Word с помощта на C#. Ако се интересувате от създаване на Word файл от нулата, вижте статията на как да създадете Word документ в C#.