У цьому короткому посібнику описано, як додати підпис у 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#.