在 C# 中從 HTML 生成 PDF

在瀏覽各種網站時,您可能希望將網頁的 HTML 內容下載為 PDF 文件以供日後使用。在這種情況下,您需要一個一體化轉換器來將您的內容從 HTML 正確轉換為 PDF。作為 C# 開發人員,我們可以輕鬆地將 HTML 內容從 HTML 文件轉換為 PDF 文檔。我們還可以從 HTML 字符串生成 PDF 文檔,或從實時 URL 將網頁另存為 PDF。在本文中,我們將學習如何在 C# 中從 HTML 生成 PDF。

本文應涵蓋以下主題:

  1. 從 HTML 生成 PDF 的 C# API
  2. 從 HTML 生成 PDF 文檔
  3. 使用保存選項將 HTML 轉換為 PDF
  4. 從 HTML 字符串生成 PDF
  5. 從 Live URL 生成 PDF

從 HTML 生成 PDF 的 C# API

要從 HTML 文件生成 PDF 文檔,我們將使用 Aspose.HTML for .NET API。它是一種高級 HTML 處理 API,允許從 HTML 文檔創建、修改和提取數據。它還允許在沒有任何外部軟件的情況下轉換和呈現 HTML 文檔。

API 的 HTMLDocument 類表示我們在瀏覽器中看到的 HTML 文檔或網頁。 PdfSaveOptions 類允許在另存為 PDF 時指定各種保存選項。我們有 Converter 類,它提供對流行格式(如 PDF、XPS、圖像格式等)的廣泛轉換。它提供 ConvertHTML() 方法將 HTML 轉換為其他格式格式。

下載 API 的 DLL 或使用 NuGet 安裝它。

PM> Install-Package Aspose.Html

在 C# 中從 HTML 生成 PDF 文檔

我們可以按照以下步驟輕鬆地從 HTML 文件生成 PDF 文檔:

  1. 首先,使用 HTMLDocument 類加載 HTML 文檔。
  2. 接下來,創建 PdfSaveOptions 類的實例。
  3. 最後,調用 Converter.ConvertHTML() 方法生成 PDF。它以 HTMLDocument、PdfSaveOptions 和輸出 PDF 文件路徑作為參數。

以下代碼示例顯示瞭如何使用 C# 從 HTML 文件生成 PDF 文檔。

// 此代碼示例演示如何從 HTML 文件生成 PDF 文檔。
// 輸入 HTML 文件路徑
string documentPath = @"C:\Files\sample.html";

// 輸出PDF文件路徑 
string savePath = Path.Combine(@"C:\Files\output.pdf");

// 加載輸入 HTML 文件
var document = new HTMLDocument(documentPath);

// 初始化 PdfSaveOptions 
var options = new PdfSaveOptions();

// 將 HTML 轉換為 PDF
Converter.ConvertHTML(document, options, savePath);
從 CSharp 中的 HTML 生成 PDF 文檔

在 C# 中從 HTML 生成 PDF 文檔

使用 C# 中的保存選項將 HTML 轉換為 PDF

我們可以按照下面給出的步驟從帶有附加保存選項的 HTML 文件生成 PDF 文檔:

  1. 首先,使用 HTMLDocument 類加載 HTML 文檔。
  2. 接下來,創建 PdfSaveOptions 類的實例。
  3. 之後,指定保存選項,例如 HorizontalResolution、VerticalResolution 等。
  4. 最後,調用 Converter.ConvertHTML() 方法生成 PDF。

以下代碼示例顯示瞭如何使用 C# 中的其他選項從 HTML 文件生成 PDF。

// 此代碼示例演示如何使用保存選項從 HTML 文件生成 PDF 文檔。
// 輸入 HTML 文件路徑
string documentPath = @"C:\Files\sample.html";

// 輸出PDF文件路徑 
string savePath = Path.Combine(@"C:\Files\output.pdf");

// 加載輸入 HTML 文件
var document = new HTMLDocument(documentPath);

// 初始化 PdfSaveOptions。 
// 設置頁面大小、邊距、分辨率並將背景顏色更改為 AliceBlue 
var options = new PdfSaveOptions()
{
    HorizontalResolution = 200,
    VerticalResolution = 200,
    JpegQuality = 100,
    BackgroundColor = Color.AliceBlue
};

options.PageSetup.AnyPage = new Page(new Aspose.Html.Drawing.Size(600, 300), new Margin(20, 10, 10, 10));

// 將 HTML 轉換為 PDF
Converter.ConvertHTML(document, options, savePath);

在 C# 中從 HTML 字符串生成 PDF

我們還可以按照以下步驟從 HTML 字符串生成 PDF 文檔:

  1. 首先,創建 PdfSaveOptions 類的實例。
  2. 或者,定義保存選項。
  3. 最後,調用 Converter.ConvertHTML() 方法生成 PDF。它以 HTML 字符串、PdfSaveOptions 和輸出 PDF 文件路徑作為參數。

以下代碼示例顯示瞭如何使用 C# 從 HTML 字符串生成 PDF。

// 此代碼示例演示如何從 HTML 字符串生成 PDF 文檔。
string htmlString = @"<h1>Convert HTML to PDF!</h1><br/><h2>This is Sample Heading!</h2><p>This is first paragraph.</p>";

// 初始化 PdfSaveOptions 
var options = new PdfSaveOptions();

// 調用 ConvertHTML 方法將 HTML 代碼轉換為 PDF           
Converter.ConvertHTML(htmlString, ".", options, @"C:\Files\HtmlStringToPdf.pdf");
在 CSharp 中從 HTML 字符串生成 PDF

在 C# 中從 HTML 字符串生成 PDF

在 C# 中從 Live URL 生成 PDF

在上一節中,我們了解瞭如何從 HTML 字符串生成 PDF。我們還可以按照以下步驟將網頁從 URL 保存為 PDF 文檔:

  1. 首先,使用網頁的 URL 創建 Url 類的實例。
  2. 接下來,創建 PdfSaveOptions 類的實例。
  3. 或者,定義保存選項。
  4. 最後,使用 Converter.ConvertHTML() 方法將 HTML 保存為 PDF。它以 Url、PdfSaveOptions 和輸出 PDF 文件路徑作為參數。

以下代碼示例展示瞭如何使用 C# 從 Live URL 生成 PDF。

// 網址
Url url = new Url("https://docs.aspose.com/diagram/net/");

// 初始化 PdfSaveOptions 
var options = new PdfSaveOptions();

// 將 HTML 代碼轉換為 PDF
Converter.ConvertHTML(url, options, @"C:\Files\outputFrom網址.pdf");

獲得免費許可證

您可以獲得免費的臨時許可證 試用 Aspose.HTML for .NET,而沒有評估限制。

結論

在本文中,我們學習瞭如何:

  • 以編程方式加載 HTML 文件;
  • 定義 PDF 保存選項;
  • 將 HTML 字符串保存為 PDF;
  • 將網頁保存為 PDF 文檔;
  • 在 C# 中將 HTML 文件轉換為 PDF。

除了在 C# 中從 HTML 生成 PDF 之外,您還可以使用 文檔 了解有關 Aspose.HTML for .NET API 的更多信息。如有任何疑問,請隨時通過我們的免費支持論壇與我們聯繫。

也可以看看