thêm xóa tệp đính kèm trong PDF trong C#

Định dạng PDF hỗ trợ thêm tệp đính kèm vào tệp PDF tương tự như tệp đính kèm trong email. Tệp đính kèm PDF có thể là TXT, DOCX, XLSX hoặc bất kỳ định dạng tài liệu nào khác. Trong bài viết này, bạn sẽ tìm hiểu cách triển khai một số tính năng thao tác với tệp đính kèm PDF cơ bản trong các ứng dụng .NET của mình. Đến cuối bài viết này, bạn sẽ có thể trích xuất, thêm hoặc xóa tệp đính kèm trong tệp PDF bằng lập trình bằng C#.

API thao tác tệp đính kèm PDF - Tải xuống miễn phí

Aspose.PDF for .NET là một API thao tác PDF nổi tiếng cho phép bạn xử lý các tệp PDF một cách liền mạch. Bạn có thể đọc, tạo, chỉnh sửa và chuyển đổi các tệp PDF cũng như thao tác với các tệp đính kèm PDF trong một vài bước. API có thể được tải xuống dưới dạng DLL hoặc MSI cũng như được cài đặt bằng NuGet.

Install-Package Aspose.Pdf

Thêm tệp đính kèm vào PDF bằng C#

Aspose.PDF for .NET cũng cho phép bạn thêm tệp đính kèm vào tệp PDF. Đối với điều này, bạn chỉ cần thêm tệp vào bộ sưu tập Document.EmbeddedFiles bằng cách sử dụng lớp FileSpecification. Sau đây là các bước để thêm tệp đính kèm vào tài liệu PDF.

Mẫu mã sau đây cho biết cách thêm tệp đính kèm vào tài liệu PDF bằng C#.

// Để biết các ví dụ đầy đủ và tệp dữ liệu, vui lòng truy cập https://github.com/aspose-pdf/Aspose.PDF-for-.NET
// mở tài liệu
Document pdfDocument = new Document("document.pdf");

// Thiết lập tệp mới để được thêm dưới dạng tệp đính kèm
FileSpecification fileSpecification = new FileSpecification("test.txt", "Sample text file");

// Thêm tệp đính kèm vào bộ sưu tập tệp đính kèm của tài liệu
pdfDocument.EmbeddedFiles.Add(fileSpecification);

// Lưu đầu ra mới
pdfDocument.Save("output.pdf");

Trích xuất tệp đính kèm PDF bằng C#

Trước hết, hãy xem cách truy xuất tệp đính kèm từ tài liệu PDF. Đối với điều này, hãy làm theo các bước dưới đây:

Mẫu mã sau đây cho biết cách trích xuất tệp đính kèm PDF bằng C#.

// Để biết các ví dụ đầy đủ và tệp dữ liệu, vui lòng truy cập https://github.com/aspose-pdf/Aspose.PDF-for-.NET
// mở tài liệu
Document pdfDocument = new Document("document.pdf");

// Nhận tệp nhúng cụ thể
foreach(FileSpecification fileSpecification in pdfDocument.EmbeddedFiles)
{
    // Lấy thuộc tính tập tin
    Console.WriteLine("Name: {0}", fileSpecification.Name);
    Console.WriteLine("Description: {0}", fileSpecification.Description);
    Console.WriteLine("Mime Type: {0}", fileSpecification.MIMEType);

    // Kiểm tra xem đối tượng tham số có chứa tham số không
    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);
    }

    // Nhận tệp đính kèm và ghi vào tệp hoặc luồng
    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();
}

Xóa tệp đính kèm khỏi PDF bằng C#

Bạn có thể xóa tất cả hoặc một tệp đính kèm cụ thể khỏi tệp PDF. Đối với điều này, Aspose.PDF for .NET cung cấp các phương thức sau:

Sau đây là các bước để xóa tệp đính kèm khỏi tệp PDF.

Mẫu mã sau đây cho biết cách xóa tệp đính kèm khỏi tệp PDF trong C#.

// Để biết các ví dụ đầy đủ và tệp dữ liệu, vui lòng truy cập https://github.com/aspose-pdf/Aspose.PDF-for-.NET
// mở tài liệu
Document pdfDocument = new Document("document.pdf");

// Xóa tất cả các tệp đính kèm
pdfDocument.EmbeddedFiles.Delete();

// Lưu tệp đã cập nhật
pdfDocument.Save("output.pdf");

Sự kết luận

Trong bài viết này, bạn đã biết cách thao tác với các tệp đính kèm trong tài liệu PDF theo cách lập trình. Hướng dẫn từng bước, tham chiếu API và mẫu mã đã chỉ ra cách truy xuất, thêm và xóa tệp đính kèm trong tệp PDF bằng C#. Bạn có thể tìm hiểu thêm về Aspose.PDF for .NET bằng cách sử dụng tài liệu.

Xem thêm