![добавить удалить вложение в PDF на С#](images/add-remove-attachments-in-pdf-using-C.jpg#center)
Формат PDF поддерживает добавление в PDF-файл вложений, аналогичных вложениям электронной почты. Вложение PDF может иметь формат TXT, DOCX, XLSX или любой другой формат документа. В этой статье вы узнаете, как реализовать некоторые основные функции работы с вложениями PDF в приложениях .NET. К концу этой статьи вы сможете извлекать, добавлять или удалять вложения в PDF-файле программно с помощью C#.
- API управления вложениями PDF — скачать бесплатно
- Добавить вложения в PDF с помощью C#
- Извлечь вложение PDF с помощью C#
- Удалить вложения из PDF с помощью С#
API управления вложениями PDF — скачать бесплатно
Aspose.PDF for .NET — это хорошо известный API для работы с PDF, который позволяет беспрепятственно обрабатывать PDF-файлы. Вы можете читать, создавать, редактировать и конвертировать PDF-файлы, а также манипулировать PDF-вложениями за несколько шагов. API можно загрузить в виде DLL или MSI, а также установить с помощью NuGet.
Install-Package Aspose.Pdf
Добавить вложения в PDF с помощью C#
Aspose.PDF для .NET также позволяет добавлять вложения в файл PDF. Для этого вам просто нужно добавить файл в коллекцию Document.EmbeddedFiles с помощью класса FileSpecification. Ниже приведены шаги для добавления вложения в документ PDF.
- Создайте новый PDF-документ, используя класс Document.
- Создайте экземпляр класса FileSpecification для загрузки вложенного файла.
- Используйте метод Document.EmbeddedFiles.Add(FileSpecification), чтобы добавить вложение.
- Сохраните документ методом Document.Save(String).
В следующем примере кода показано, как добавить вложение в документ PDF с помощью C#.
// Полные примеры и файлы данных см. на странице https://github.com/aspose-pdf/Aspose.PDF-for-.NET.
// Открыть документ
Document pdfDocument = new Document("document.pdf");
// Настройте новый файл, который будет добавлен в качестве вложения
FileSpecification fileSpecification = new FileSpecification("test.txt", "Sample text file");
// Добавить вложение в коллекцию вложений документа
pdfDocument.EmbeddedFiles.Add(fileSpecification);
// Сохранить новый вывод
pdfDocument.Save("output.pdf");
Извлечь вложение PDF с помощью C#
Прежде всего, давайте посмотрим, как получить вложения из документа PDF. Для этого выполните следующие шаги:
- Создайте экземпляр класса Document.
- Получите вложения в объект EmbeddedFileCollection, используя свойство Document.EmbeddedFiles.
- Прокручивайте вложения в коллекции EmbeddedFileCollection, используя объект FileSpecification.
- Доступ к свойствам каждого вложения с помощью объекта FileSpecification.
- Сохраните вложение как файл (если требуется).
В следующем примере кода показано, как извлечь вложения PDF с помощью C#.
// Полные примеры и файлы данных см. на странице https://github.com/aspose-pdf/Aspose.PDF-for-.NET.
// Открыть документ
Document pdfDocument = new Document("document.pdf");
// Получить конкретный встроенный файл
foreach(FileSpecification fileSpecification in pdfDocument.EmbeddedFiles)
{
// Получить свойства файла
Console.WriteLine("Name: {0}", fileSpecification.Name);
Console.WriteLine("Description: {0}", fileSpecification.Description);
Console.WriteLine("Mime Type: {0}", fileSpecification.MIMEType);
// Проверьте, содержит ли объект параметров параметры
if (fileSpecification.Params != null)
{
Console.WriteLine("CheckSum: {0}",
fileSpecification.Params.CheckSum);
Console.WriteLine("Creation Date: {0}",
fileSpecification.Params.CreationDate);
Console.WriteLine("Modification Date: {0}",
fileSpecification.Params.ModDate);
Console.WriteLine("Size: {0}", fileSpecification.Params.Size);
}
// Получить вложение и записать в файл или поток
byte[] fileContent = new byte[fileSpecification.Contents.Length];
fileSpecification.Contents.Read(fileContent, 0, fileContent.Length);
FileStream fileStream = new FileStream(fileSpecification.Name, FileMode.Create);
fileStream.Write(fileContent, 0, fileContent.Length);
fileStream.Close();
}
Удалить вложения из PDF с помощью С#
Вы можете удалить все или определенное вложение из файла PDF. Для этого Aspose.PDF for .NET предоставляет следующие методы:
- Удалить() - Deletes all the attachments.
- Удалить (строковое имя файла) - Deletes attachment by name.
- DeleteByKey (строковый ключ) - Deletes attachment by key in the collection.
Ниже приведены шаги для удаления вложений из PDF-файла.
- Создайте экземпляр класса Document для загрузки файла PDF.
- Используйте Document.EmbeddedFiles.Delete() (или другой метод удаления) для удаления вложений.
- Сохраните файл с помощью метода Document.Save(String).
В следующем примере кода показано, как удалить вложения из PDF-файла на C#.
// Полные примеры и файлы данных см. на странице https://github.com/aspose-pdf/Aspose.PDF-for-.NET.
// Открыть документ
Document pdfDocument = new Document("document.pdf");
// Удалить все вложения
pdfDocument.EmbeddedFiles.Delete();
// Сохранить обновленный файл
pdfDocument.Save("output.pdf");
Вывод
В этой статье вы увидели, как программно манипулировать вложениями в документах PDF. В пошаговом руководстве, справочниках по API и примерах кода показано, как извлекать, добавлять и удалять вложения в файлах PDF с помощью C#. Вы можете узнать больше об Aspose.PDF для .NET, используя документацию.