Chuyển đổi HTML sang PDF trong C#

Bạn đã bao giờ tự hỏi làm thế nào để chuyển đổi HTML thành PDF trong C# chưa? Nếu bạn là nhà phát triển và bạn cần tạo một tài liệu có thể đọc được trên màn hình và cũng có thể in được, chuyển đổi HTML sang PDF sẽ là một giải pháp lý tưởng cho vấn đề của bạn. Bạn có thể sử dụng bài viết này như một hướng dẫn từng bước về cách chính xác để chuyển đổi HTML sang PDF trong C#. Bạn sẽ tìm thấy các bước chi tiết và đoạn mã có thể giúp bạn giải quyết vấn đề này một cách rất dễ dàng.

HTML (Hyper Text Markup Language) là ngôn ngữ đánh dấu cho phép tạo các trang web. Một trang HTML bao gồm các phần tử HTML bao gồm biểu mẫu, văn bản, hình ảnh, hoạt ảnh, liên kết, v.v. Thẻ đại diện cho một trong các phần tử này, theo sau là một số phần tử khác. Mỗi thẻ có một bắt đầu và một kết thúc. Để thể hiện bố cục tổng thể, nó cũng có thể nhúng các tập lệnh được viết bằng JavaScript hoặc Biểu định kiểu (CSS). Chúng tôi có thể chuyển đổi và lưu các trang web dưới dạng tài liệu PDF theo chương trình. Không có giới hạn về lượng thông tin chúng tôi có thể đưa vào tệp PDF. Chúng tôi có thể bao gồm văn bản, hình ảnh, siêu liên kết, trường biểu mẫu, đa phương tiện, chữ ký số, tệp đính kèm, siêu dữ liệu, tính năng không gian địa lý và đối tượng 3D.

Chuyển đổi HTML sang PDF cho phép lưu các trang web hoặc các trang web HTML độc lập khác ở định dạng di động hoặc in chúng ra. Vì vậy, hãy tiếp tục đọc các bước chi tiết về cách chuyển đổi HTML sang PDF trong C#.

Các chủ đề sau đây sẽ được đề cập trong bài viết này:

  1. API C# chuyển đổi HTML sang PDF
  2. Chuyển đổi HTML sang PDF
  3. Chuyển đổi HTML sang PDF với Tùy chọn Lưu
  4. Xuất chuỗi HTML sang PDF
  5. Chuyển đổi HTML sang PDF từ URL trực tiếp

Trình chuyển đổi HTML sang PDF C# API

Để chuyển đổi HTML sang PDF, chúng tôi sẽ sử dụng Aspose.HTML for .NET API. API cho phép tạo tài liệu HTML. Nó cũng cho phép sửa đổi và trích xuất dữ liệu từ các tài liệu HTML. Hơn nữa, nó cho phép bạn chuyển đổi và hiển thị các tài liệu HTML mà không cần bất kỳ phần mềm bên ngoài nào.

API cung cấp lớp HTMLDocument đại diện cho tài liệu HTML hoặc trang web mà chúng ta thấy trong trình duyệt. Lớp PdfSaveOptions của API cho phép chỉ định các tùy chọn lưu khác nhau trong khi lưu dưới dạng PDF. Chúng tôi có thể chuyển đổi các định dạng được hỗ trợ bằng lớp Converter. Nó cung cấp nhiều loại chuyển đổi sang các định dạng phổ biến, chẳng hạn như PDF, XPS, định dạng hình ảnh, v.v. Nó cung cấp các phương thức ConvertHTML() để chuyển đổi HTML sang các định dạng khác.

Vui lòng tải xuống tệp DLL của API hoặc cài đặt nó bằng NuGet.

PM> Install-Package Aspose.Html

Chuyển đổi HTML sang PDF bằng C#

Chúng tôi có thể dễ dàng chuyển đổi bất kỳ tệp HTML nào thành tài liệu PDF bằng cách thực hiện theo các bước dưới đây:

  1. Đầu tiên, tải một tài liệu HTML bằng lớp HTMLDocument.
  2. Tiếp theo, tạo một thể hiện của lớp PdfSaveOptions.
  3. Cuối cùng, gọi phương thức Converter.ConvertHTML(). Nó lấy HTMLDocument, PdfSaveOptions và xuất đường dẫn tệp PDF làm đối số.

Mẫu mã sau đây cho biết cách chuyển đổi tệp HTML thành tài liệu PDF trong C#.

// Ví dụ mã này trình bày cách chuyển đổi tệp HTML thành tài liệu PDF.
// Tải tệp HTML đầu vào
var document = new HTMLDocument(@"C:\Files\sample.html");

// Khởi tạo PdfSaveOptions 
var options = new PdfSaveOptions();

// Chuyển đổi HTML sang PDF
Converter.ConvertHTML(document, options, @"C:\Files\output.pdf");
Chuyển đổi HTML sang PDF bằng C#

Chuyển đổi HTML sang PDF bằng C#

Chuyển đổi HTML sang PDF với Lưu Tùy chọn trong C#

Chúng tôi có thể đặt nhiều tùy chọn lưu bổ sung cụ thể để lưu tệp HTML dưới dạng tài liệu PDF bằng cách thực hiện theo các bước được cung cấp bên dưới:

  1. Đầu tiên, tải một tài liệu HTML bằng lớp HTMLDocument.
  2. Tiếp theo, tạo một thể hiện của lớp PdfSaveOptions.
  3. Sau đó, chỉ định các tùy chọn lưu như Độ phân giải ngang, Độ phân giải dọc, Màu nền, v.v.
  4. Cuối cùng, gọi phương thức Converter.ConvertHTML() để chuyển đổi tệp HTML thành PDF.

Mẫu mã sau đây cho biết cách chuyển đổi tệp HTML thành PDF với các tùy chọn bổ sung trong C#.

// Ví dụ mã này trình bày cách chuyển đổi tệp HTML thành tài liệu PDF bằng Tùy chọn lưu.
// Tải tệp HTML đầu vào
var document = new HTMLDocument(@"C:\Files\sample.html");

// Khởi tạo PdfSaveOptions
// Thiết lập độ phân giải và thay đổi màu nền thành Khaki 
var options = new PdfSaveOptions();
options.HorizontalResolution = 200;
options.VerticalResolution = 200;
options.JpegQuality = 100;
options.BackgroundColor = System.Drawing.Color.Khaki;

// Đặt kích thước trang và lề
options.PageSetup.AnyPage = new Page(new Aspose.Html.Drawing.Size(600, 800), new Margin(10, 10, 10, 10));

// Chuyển đổi HTML sang PDF
Converter.ConvertHTML(document, options, @"C:\Files\output_saveOptions.pdf");
Chuyển đổi HTML sang PDF với Lưu Tùy chọn trong C#

Chuyển đổi HTML sang PDF với Lưu Tùy chọn trong C#

Xuất chuỗi HTML sang PDF trong C#

Chúng tôi cũng có thể chuyển đổi chuỗi HTML thành tài liệu PDF bằng cách thực hiện theo các bước dưới đây:

  1. Đầu tiên, xác định một chuỗi HTML
  2. Tiếp theo, tạo một thể hiện của lớp PdfSaveOptions.
  3. Tùy chọn, xác định các tùy chọn lưu.
  4. Cuối cùng, gọi phương thức Converter.ConvertHTML() để chuyển đổi một chuỗi HTML thành PDF. Nó lấy chuỗi HTML, PdfSaveOptions và đường dẫn tệp PDF đầu ra làm đối số.

Mẫu mã sau đây cho biết cách chuyển đổi chuỗi HTML thành tài liệu PDF trong C#.

// Ví dụ mã này trình bày cách chuyển đổi chuỗi HTML thành tài liệu PDF.
// Xác định chuỗi HTML
string htmlString = @"<style>
        .st
        {
        color: green;
        }
        </style>
        <div id=id1>Aspose.Html rendering Text in Black Color</div>
        <div id=id2 class=''st''>Aspose.Html rendering Text in Green Color</div><div id=id3 class=''st'' style='color: blue;'>Aspose.Html rendering Text in Blue Color</div>
        <div id=id3 class=''st'' style='color: red;'><font face='Arial'>Aspose.Html rendering Text in Red Color</font></div>";

// Khởi tạo PdfSaveOptions 
var options = new PdfSaveOptions();

// Gọi phương thức ConvertHTML để chuyển mã HTML sang PDF           
Converter.ConvertHTML(htmlString, ".", options, @"C:\Files\HtmlStringToPdf.pdf");
Xuất chuỗi HTML sang PDF trong C#

Xuất chuỗi HTML sang PDF trong C#

Chuyển đổi HTML sang PDF từ URL trực tiếp trong C#

Chúng tôi cũng có thể lưu bất kỳ trang web nào từ một URL trực tiếp dưới dạng tài liệu PDF bằng cách thực hiện theo các bước dưới đây:

  1. Đầu tiên, tạo một thể hiện của lớp Url với URL của trang web.
  2. Tiếp theo, tạo một thể hiện của lớp PdfSaveOptions.
  3. Tùy chọn, xác định các tùy chọn lưu.
  4. Cuối cùng, lưu HTML dưới dạng PDF bằng phương thức Converter.ConvertHTML(). Nó lấy đường dẫn tệp Url, PdfSaveOptions và đầu ra PDF làm đối số.

Mẫu mã sau đây cho biết cách chuyển đổi HTML sang PDF từ URL Trực tiếp bằng C#.

// Ví dụ mã này trình bày cách chuyển đổi HTML từ URL Trực tiếp sang tài liệu PDF.
// URL
Url url = new Url("https://docs.aspose.com/html/net/");

// Khởi tạo PdfSaveOptions 
var options = new PdfSaveOptions();

// Chuyển mã HTML sang PDF
Converter.ConvertHTML(url, options, @"C:\Files\outputFromURL.pdf");
Chuyển đổi HTML sang PDF từ URL trực tiếp trong C#

Chuyển đổi HTML sang PDF từ URL trực tiếp trong C#

Nhận giấy phép miễn phí

Bạn có thể nhận giấy phép tạm thời miễn phí để dùng thử Aspose.HTML for .NET mà không bị giới hạn đánh giá.

Sự kết luận

Trong bài viết này, chúng ta đã học cách:

  • tải một tệp HTML;
  • chỉ định các tùy chọn lưu PDF;
  • chuyển đổi HTML từ tệp, chuỗi hoặc trang web trực tiếp sang PDF trong C#.

Bên cạnh việc chuyển đổi HTML sang PDF trong C#, bạn có thể tìm hiểu thêm về Aspose.HTML for .NET API bằng cách sử dụng tài liệu. Trong trường hợp có bất kỳ sự mơ hồ nào, vui lòng liên hệ với chúng tôi trên diễn đàn hỗ trợ miễn phí của chúng tôi.

Xem thêm