Как да добавите подпис в Word с помощта на C#

Този бърз урок ръководи как да добавите подпис в Word с помощта на C# чрез споделяне на подробности за конфигурацията, подробни стъпки и изпълним примерен код, който използва изходния документ на Word, PKCS12 магазин и неговата парола. Можете да зададете редица свойства, преди да подпишете документа, който е видим за потребителите за справка. След като вмъкнете електронен подпис в Word с помощта на C#, той може да бъде записан във всеки от поддържаните формати като DOCX, DOC и др.

Стъпки за добавяне на подпис в Word с помощта на C#

  1. Конфигурирайте средата за разработка, за да добавите Aspose.Words с помощта на мениджъра на пакети NuGet за подписване на документи
  2. Заредете PFX сертификата с помощта на класа CertificateHolder, като предоставите пътя на файла и паролата
  3. Задайте коментари и време за подписване с помощта на обекта SignOptions
  4. Заредете изходния Word файл с помощта на FileStream
  5. Подпишете заредения документ с помощта на метода Sign в класа DigitalSignatureUtil
  6. Заредете подписания документ и проверете информацията за подписа

Тези стъпки описват процеса за добавяне на цифров подпис в 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#.

 Български