如何使用 IronPDF 在 C# 中將 PDF 轉換為 HTML
IronPDF 透過 SaveAsHtml 方法,僅需一行 C# 程式碼即可實現 PDF 轉 HTML,使 PDF 檔案更適合網頁使用,從而提升可存取性、搜尋引擎優化 (SEO) 及網頁整合能力。 IronPDF 函式庫提供了一套強大的解決方案,可將 PDF 內容轉換為 HTML 格式,同時保留視覺結構與版面配置。
將 PDF 轉換為 HTML 具有以下優勢:
- 提升網頁無障礙功能
- 適用於不同裝置的響應式設計
- 改進搜尋引擎優化
- 無縫的網頁整合
- 透過網頁工具輕鬆編輯內容
- 跨平台相容性
- 支援動態元素
此轉換流程在將 PDF 內容轉用於網頁平台,或需要從 PDF 中擷取文字與圖片以進行後續處理時,皆能提供協助。
IronPDF 簡化了 .NET C# 中的 PDF 轉 HTML 流程,提供內部處理複雜轉換過程的方法。 無論是建置文件管理系統、開發基於網頁的 PDF 檢視器,還是讓 PDF 內容可被搜尋引擎檢索,IronPDF 的轉換功能皆能提供可靠的解決方案。
快速入門:使用 IronPDF 立即將 PDF 轉換為 HTML
使用 IronPDF,僅需一行程式碼即可將 PDF 文件轉換為 HTML 檔案。 此範例展示如何使用 IronPDF 的 SaveAsHtml 方法,實現快速的 PDF 轉 HTML 轉換。
簡化工作流程(5 個步驟)
- 下載適用於 .NET 的
IronPdf函式庫 - 使用
FromFile方法匯入現有的 PDF 文件 - 使用 HtmlFormatOptions 類別設定輸出 HTML
- 使用
ToHtmlString方法將 PDF 轉換為 HTML 字串 - 使用
SaveAsHtml方法匯出 HTML 檔案
如何將基本 PDF 轉換為 HTML?
ToHtmlString 方法可分析現有 PDF 文件中的 HTML 元素。 它可用作除錯或 PDF 比對的工具。 SaveAsHtml 方法可直接將 PDF 文件儲存為 HTML 檔案。 這兩種方法都能根據具體需求提供靈活性。
PDF 轉 HTML 的轉換過程在為網頁應用程式產生 HTML 輸出時,會保留 PDF 文件的視覺版面配置。 這有助於在無需使用者下載 PDF 檔案或安裝閱讀器外掛程式的情況下,於網頁瀏覽器中顯示 PDF 內容。
對於處理 PDF 表單的開發人員而言,轉換過程會將表單欄位渲染為靜態內容。 為維持表單功能,建議使用 IronPDF 的表單編輯功能,在轉換前先擷取表單資料。
範例 PDF 的樣式為何?
如何實作轉換程式碼?
:path=/static-assets/pdf/content-code-examples/how-to/pdf-to-html.cs
using IronPdf;
using System;
PdfDocument pdf = PdfDocument.FromFile("sample.pdf");
// Convert PDF to HTML string
string html = pdf.ToHtmlString();
Console.WriteLine(html);
// Convert PDF to HTML file
pdf.SaveAsHtml("myHtml.html");
Imports IronPdf
Imports System
Dim pdf As PdfDocument = PdfDocument.FromFile("sample.pdf")
' Convert PDF to HTML string
Dim html As String = pdf.ToHtmlString()
Console.WriteLine(html)
' Convert PDF to HTML file
pdf.SaveAsHtml("myHtml.html")
此程式碼示範了 PDF 轉 HTML 的兩種主要方法。 當您需要透過程式化方式處理 HTML 內容時,ToHtmlString 方法便能派上用場;而 SaveAsHtml 則可直接產生檔案。 若有多份 PDF 檔案,請採用類似技術進行批次處理。
生成的 HTML 檔案會是什麼樣子?
由 SaveAsHtml 方法生成的完整 HTML 輸出內容,已輸入至下方網站中。
如何設定進階 PDF 轉 HTML 選項?
ToHtmlString 與 SaveAsHtml 兩種方法皆可透過 HtmlFormatOptions 類別進行設定。 此配置系統可自訂所產生 HTML 輸出內容的外觀與行為。 可用屬性包括:
BackgroundColor:設定 HTML 輸出背景顏色PdfPageMargin:以像素為單位設定頁面邊距
以下屬性適用於 ToHtmlString 和 SaveAsHtml 方法中的 'title' 參數。 他們在內容開頭新增了一個標題,但未修改原始 PDF 的標題:
H1Color:設定標題顏色H1FontSize:設定標題字型大小(單位為像素)H1TextAlignment:設定標題對齊方式(左對齊、居中或右對齊)
對於需要使用自訂紙張尺寸或特定頁面方向的開發人員,這些設定選項可確保 HTML 輸出維持預期的視覺結構。
有哪些可用的設定選項?
:path=/static-assets/pdf/content-code-examples/how-to/pdf-to-html-advanced-settings.cs
using IronPdf;
using IronSoftware.Drawing;
using System;
PdfDocument pdf = PdfDocument.FromFile("sample.pdf");
// PDF to HTML configuration options
HtmlFormatOptions htmlformat = new HtmlFormatOptions();
htmlformat.BackgroundColor = Color.White;
htmlformat.PdfPageMargin = 10;
htmlformat.H1Color = Color.Blue;
htmlformat.H1FontSize = 25;
htmlformat.H1TextAlignment = TextAlignment.Center;
// Convert PDF to HTML string
string html = pdf.ToHtmlString();
Console.WriteLine(html);
// Convert PDF to HTML file
pdf.SaveAsHtml("myHtmlConfigured.html", true, "Hello World", htmlFormatOptions: htmlformat);
Imports IronPdf
Imports IronSoftware.Drawing
Imports System
Dim pdf As PdfDocument = PdfDocument.FromFile("sample.pdf")
' PDF to HTML configuration options
Dim htmlformat As New HtmlFormatOptions()
htmlformat.BackgroundColor = Color.White
htmlformat.PdfPageMargin = 10
htmlformat.H1Color = Color.Blue
htmlformat.H1FontSize = 25
htmlformat.H1TextAlignment = TextAlignment.Center
' Convert PDF to HTML string
Dim html As String = pdf.ToHtmlString()
Console.WriteLine(html)
' Convert PDF to HTML file
pdf.SaveAsHtml("myHtmlConfigured.html", True, "Hello World", htmlFormatOptions:=htmlformat)
此範例展示如何透過自訂樣式產生精緻的 HTML 輸出。 這些設定選項與 IronPDF 的渲染引擎配合運作,可產生視覺效果忠實的高品質 HTML。
已設定的輸出有何不同?
由 SaveAsHtml 方法生成的完整 HTML 輸出內容,已輸入至下方網站中。
為何 HTML 輸出會使用 SVG 標籤?
這些方法會產生包含內嵌 CSS 的 HTML 字串。 生成的 HTML 會使用 SVG 標籤,而非標準的 HTML 標籤。 儘管存在此差異,它仍能產生有效的 HTML 程式碼,並能在網頁瀏覽器中正確顯示。 當使用 RenderHtmlAsPdf 方法渲染的 PDF 文件時,此方法返回的 HTML 字串可能與原始 HTML 輸入內容有所不同。
基於 SVG 的方法可確保精確呈現複雜的 PDF 版面配置,包括精確的定位、字型及圖形。 此方法對於包含圖片、圖表或難以透過標準 HTML 元素重現之複雜格式設定的 PDF 檔案,能發揮顯著效果。
額外程式碼範例:PDF 批次轉換為 HTML
關於將多個 PDF 檔案轉換為 HTML,以下是一個處理整個目錄中所有 PDF 檔案的範例:
using IronPdf;
using System.IO;
public class BatchPdfToHtmlConverter
{
public static void ConvertPdfDirectory(string inputDirectory, string outputDirectory)
{
// Ensure output directory exists
Directory.CreateDirectory(outputDirectory);
// Configure HTML output settings once for consistency
HtmlFormatOptions formatOptions = new HtmlFormatOptions
{
BackgroundColor = Color.WhiteSmoke,
PdfPageMargin = 15,
H1FontSize = 28,
H1TextAlignment = TextAlignment.Left
};
// Process all PDF files in the directory
string[] pdfFiles = Directory.GetFiles(inputDirectory, "*.pdf");
foreach (string pdfPath in pdfFiles)
{
try
{
// Load PDF document
PdfDocument pdf = PdfDocument.FromFile(pdfPath);
// Generate output filename
string fileName = Path.GetFileNameWithoutExtension(pdfPath);
string htmlPath = Path.Combine(outputDirectory, $"{fileName}.html");
// Convert and save as HTML with consistent formatting
pdf.SaveAsHtml(htmlPath, true, fileName, htmlFormatOptions: formatOptions);
Console.WriteLine($"Converted: {fileName}.pdf → {fileName}.html");
}
catch (Exception ex)
{
Console.WriteLine($"Error converting {pdfPath}: {ex.Message}");
}
}
}
}
using IronPdf;
using System.IO;
public class BatchPdfToHtmlConverter
{
public static void ConvertPdfDirectory(string inputDirectory, string outputDirectory)
{
// Ensure output directory exists
Directory.CreateDirectory(outputDirectory);
// Configure HTML output settings once for consistency
HtmlFormatOptions formatOptions = new HtmlFormatOptions
{
BackgroundColor = Color.WhiteSmoke,
PdfPageMargin = 15,
H1FontSize = 28,
H1TextAlignment = TextAlignment.Left
};
// Process all PDF files in the directory
string[] pdfFiles = Directory.GetFiles(inputDirectory, "*.pdf");
foreach (string pdfPath in pdfFiles)
{
try
{
// Load PDF document
PdfDocument pdf = PdfDocument.FromFile(pdfPath);
// Generate output filename
string fileName = Path.GetFileNameWithoutExtension(pdfPath);
string htmlPath = Path.Combine(outputDirectory, $"{fileName}.html");
// Convert and save as HTML with consistent formatting
pdf.SaveAsHtml(htmlPath, true, fileName, htmlFormatOptions: formatOptions);
Console.WriteLine($"Converted: {fileName}.pdf → {fileName}.html");
}
catch (Exception ex)
{
Console.WriteLine($"Error converting {pdfPath}: {ex.Message}");
}
}
}
}
Imports IronPdf
Imports System.IO
Public Class BatchPdfToHtmlConverter
Public Shared Sub ConvertPdfDirectory(inputDirectory As String, outputDirectory As String)
' Ensure output directory exists
Directory.CreateDirectory(outputDirectory)
' Configure HTML output settings once for consistency
Dim formatOptions As New HtmlFormatOptions With {
.BackgroundColor = Color.WhiteSmoke,
.PdfPageMargin = 15,
.H1FontSize = 28,
.H1TextAlignment = TextAlignment.Left
}
' Process all PDF files in the directory
Dim pdfFiles As String() = Directory.GetFiles(inputDirectory, "*.pdf")
For Each pdfPath As String In pdfFiles
Try
' Load PDF document
Dim pdf As PdfDocument = PdfDocument.FromFile(pdfPath)
' Generate output filename
Dim fileName As String = Path.GetFileNameWithoutExtension(pdfPath)
Dim htmlPath As String = Path.Combine(outputDirectory, $"{fileName}.html")
' Convert and save as HTML with consistent formatting
pdf.SaveAsHtml(htmlPath, True, fileName, htmlFormatOptions:=formatOptions)
Console.WriteLine($"Converted: {fileName}.pdf → {fileName}.html")
Catch ex As Exception
Console.WriteLine($"Error converting {pdfPath}: {ex.Message}")
End Try
Next
End Sub
End Class
此批次轉換範例適用於內容管理系統、數位檔案庫,或需要將大量 PDF 內容發佈至網路的應用程式。 如需進一步了解如何透過程式化方式處理 PDF,請參閱我們的教學專區。
常見問題
如何在 C# 中將 PDF 檔案轉換為 HTML?
透過 IronPDF,您只需一行 C# 程式碼即可將 PDF 轉換為 HTML:IronPdf.PdfDocument.FromFile("example.pdf").SaveAsHtml("output.html")。此方法會在內部處理複雜的轉換流程,同時保留 PDF 文件的視覺結構與版面配置。
將 PDF 轉換為 HTML 的主要好處是什麼?
IronPDF 的 PDF 轉 HTML 功能提供多項優勢,包括提升網頁無障礙性、支援不同裝置的響應式設計、改善 SEO、無縫整合至網頁、透過網頁工具輕鬆編輯內容、跨平台相容性,以及對動態元素的支援。
有哪些可用方法可將 PDF 轉換為 HTML?
IronPDF 提供兩種主要的 PDF 轉 HTML 轉換方法:ToHtmlString 方法可分析 HTML 元素並將 HTML 作為字串傳回;SaveAsHtml 方法則直接將 PDF 文件儲存為 HTML 檔案。這兩種方法皆能保留 PDF 文件的視覺版面配置。
將 PDF 轉換為 HTML 後,互動式表單欄位是否仍能正常運作?
不,當使用 IronPDF 的 PDF 轉 HTML 功能時,原始 PDF 中的所有互動式表單欄位在生成的 HTML 文件中將無法正常運作。這些表單欄位會被渲染為靜態內容。若要維持表單功能,您應在轉換前使用 IronPDF 的表單編輯功能來擷取表單資料。
將 PDF 轉換為 HTML 時,我可以自訂輸出格式嗎?
是的,IronPDF 允許您透過 HtmlFormatOptions 類別來設定輸出 HTML。這讓您能夠控制 HTML 轉換過程的各個方面,以確保輸出結果符合您的特定需求。

