C# Word sang PDF - DOC sang PDF

Chuyển đổi Word sang PDF là một thông lệ phổ biến ngày nay và nó được ưu tiên trước khi chia sẻ tài liệu. MS Word cung cấp tính năng dựng sẵn để lưu tài liệu Word dưới dạng PDF, tuy nhiên, có thể xảy ra trường hợp bạn muốn chuyển đổi tài liệu Word sang PDF theo chương trình, chẳng hạn như trong các ứng dụng web của mình hoặc bạn có thể yêu cầu chuyển đổi hàng loạt Word sang PDF mà không cần cài đặt MS Office. Vì vậy, trong bài viết này, bạn sẽ tìm hiểu cách chuyển đổi DOCX hoặc DOC sang PDF bằng C# trong .NET hoặc .NET Core framework.

Chuyển đổi từ C# DOCX sang PDF - Kịch bản

Trong bài viết này, bạn sẽ học cách:

C# .NET API để chuyển đổi DOCX sang PDF

Aspose.Words for .NET là một API mạnh mẽ để tạo và thao tác với các định dạng tài liệu Word phổ biến. API cũng cung cấp một cách dễ dàng để chuyển đổi tài liệu Word sang PDF với độ trung thực cao. Do đó, để chuyển đổi Word sang PDF trong C#, trước tiên chúng tôi sẽ thêm một tham chiếu đến Aspose.Words for .NET DLL trong dự án hoặc cài đặt nó bằng một trong các phương pháp sau.

Sử dụng Trình quản lý gói NuGet

  • Tạo/mở dự án trong Visual Studio.
  • Truy cập Trình quản lý gói NuGet và tìm kiếm Aspose.Words.
  • Cài đặt Aspose.Words for .NET.
Chuyển Word sang PDF C# .NET

Sử dụng Bảng điều khiển quản lý gói

PM> Install-Package Aspose.Words

Chuyển đổi DOCX sang PDF đơn giản trong C#

Để chuyển đổi tài liệu Word sang PDF, bạn sẽ phải gọi phương thức Document.Save() và chỉ định tên tệp đầu ra có phần mở rộng “.pdf”. Mẫu mã sau đây cho biết cách chuyển đổi DOC sang PDF trong C#.

// Tải tài liệu từ đĩa.
Document doc = new Document("word.doc");
// Lưu dưới dạng PDF
doc.Save("output.pdf");

Tài liệu văn bản

C# Chuyển đổi từ sang PDF

PDF đã chuyển đổi

Word sang PDF theo chương trình trong C#

Chuyển đổi các trang đã chọn của DOCX sang PDF trong C#

Bạn cũng có thể tùy chỉnh chuyển đổi Word sang PDF bằng cách chỉ định phạm vi trang bạn muốn nhận trong tài liệu PDF kết quả. Bạn có thể chuyển đổi N trang đầu tiên hoặc xác định phạm vi trang chỉ định chỉ mục của trang bắt đầu. Mẫu mã sau đây cho biết cách chuyển đổi 3 trang bắt đầu từ trang thứ hai của DOCX sang PDF trong C#.

Document doc = new Document("word.docx");
PdfSaveOptions options = new PdfSaveOptions();
// Chuyển đổi 3 trang bắt đầu từ chỉ mục 1 trong đó 0 là chỉ mục của trang đầu tiên 
options.PageIndex = 1;
options.PageCount = 3;
// Lưu từ dưới dạng PDF
doc.Save("output.pdf", options);

C# Chuyển đổi DOCX DOC sang PDF với một tiêu chuẩn cụ thể

Tài liệu PDF có thể tuân thủ các tiêu chuẩn PDF khác nhau, chẳng hạn như PDF 1.7, PDF 1.5, PDF/A-1a, v.v. Theo tiêu chuẩn này, Aspose.Words for .NET cho phép chỉ định mức độ tuân thủ PDF trong chuyển đổi Word sang PDF. Bạn có thể chỉ định mức tuân thủ bằng cách sử dụng PdfCompliance enum. Mẫu mã sau đây cho biết cách đặt mức tuân thủ trong chuyển đổi DOCX sang PDF trong C#.

Document doc = new Document("word.docx");
// Đặt tuân thủ PDFSaveOption thành PDF17
PdfSaveOptions options = new PdfSaveOptions();
options.Compliance = PdfCompliance.Pdf17;
// Chuyển đổi từ sang PDF
doc.Save("output.pdf", options);

C# Chuyển đổi DOCX sang PDF bằng Nén văn bản/hình ảnh

Định dạng PDF hỗ trợ nén văn bản và hình ảnh để giảm kích thước của tài liệu. Vì tài liệu PDF có thể có kích thước cồng kềnh nên việc nén nội dung của nó giúp dễ dàng tải lên, chia sẻ, in, v.v. Việc nén văn bản và hình ảnh cũng có thể được áp dụng trong chuyển đổi DOC sang PDF bằng Aspose.Words for .NET.

Tùy chọn nén văn bản

Các tùy chọn nén văn bản sau đây có sẵn trong PdfTextCompression enum.

  • Không có: Lưu PDF mà không cần nén văn bản.
  • Flate: Lưu PDF với nén phẳng (ZIP).

Nén hình ảnh

Các tùy chọn nén hình ảnh sau đây có sẵn trong PdfImageCompression enum.

  • Tự động: API tự động chọn kiểu nén phù hợp nhất cho mọi hình ảnh trong tài liệu.
  • Jpeg: Nén thành ảnh JPEG (không hỗ trợ độ trong suốt).

Mẫu mã sau đây cho biết cách chuyển đổi DOCX sang PDF với tính năng nén văn bản và hình ảnh trong C#.

Document doc = new Document("word.docx");
PdfSaveOptions options = new PdfSaveOptions();
// Nén văn bản và hình ảnh
options.TextCompression = PdfTextCompression.Flate;
options.ImageCompression = PdfImageCompression.Auto;
// Lưu từ dưới dạng PDF
doc.Save("output.pdf", options);

Chuyển đổi C# DOCX sang PDF bằng Chữ ký số

Bạn cũng có thể áp dụng chữ ký điện tử cho tệp PDF đầu ra trong khi thực hiện chuyển đổi Word sang PDF. Lớp CertificateHolder cho phép bạn chỉ định chứng chỉ kỹ thuật số và mật khẩu. Lớp PdfDigitalSignatureDetails cho phép cung cấp thông tin chi tiết về chữ ký số như chủ sở hữu chứng chỉ, lý do, địa điểm và ngày/giờ. Mẫu mã sau đây cho biết cách chuyển đổi DOC/DOCX sang PDF bằng chữ ký điện tử trong C#.

Document doc = new Document("word.docx");
PdfSaveOptions options = new PdfSaveOptions();
// Chi tiết chữ ký số
CertificateHolder certHolder = CertificateHolder.Create("signature.pfx", "12345");
options.DigitalSignatureDetails = new PdfDigitalSignatureDetails(certHolder, "reason", "location", DateTime.Now);
// Lưu từ dưới dạng PDF
doc.Save("output.pdf", options);

Chuyển đổi DOCX sang PDF với Chất lượng JPEG mong muốn trong C#

Bạn cũng có thể chỉ định chất lượng JPEG mong muốn mà bạn muốn có trong tài liệu PDF được chuyển đổi bằng thuộc tính PdfSaveOptions.JpegQuality. Giá trị của JpegQuality có thể thay đổi từ 0 đến 100 trong đó 0 nghĩa là chất lượng kém nhất nhưng độ nén tối đa và 100 nghĩa là chất lượng tốt nhất nhưng độ nén tối thiểu.

Mẫu mã sau đây cho biết cách đặt chất lượng JPEG khi chuyển đổi DOCX sang PDF trong C#.

Document doc = new Document("word.docx");
// Đặt chất lượng Jpeg
PdfSaveOptions options = new PdfSaveOptions();
options.JpegQuality = 100;
// Chuyển đổi từ sang PDF
doc.Save("output.pdf", options);

Sự kết luận

Trong bài viết này, bạn đã học cách chuyển đổi DOCX hoặc DOC sang PDF trong C# với nhiều tùy chọn khác nhau. Truy cập tài liệu của Aspose.Words for .NET để xem bộ tính năng hoàn chỉnh do API cung cấp. Đối với bất kỳ câu hỏi hoặc thắc mắc nào, hãy liên hệ với chúng tôi qua diễn đàn của chúng tôi.

Những bài viết liên quan)