HTML美化器(開發者如何執行)
在 .NET 中進行 HTML 到 PDF 的轉換工作時,乾淨且結構良好的 HTML 會對最終 PDF 的品質產生顯著的影響。 正確格式化原始 HTML 可確保可讀性、正確呈現和一致性。 這就是 HTML formatter 或 HTML prettifier 發揮作用的地方。
在本文中,我們將探討如何在使用 IronPDF 適用於 .NET 將 HTML 轉換為 PDF 之前,在 .NET 中使用 HTML prettifier。 我們將討論 prettification 的好處,展示可提供幫助的函式庫,並提供實用的程式碼範例。
什麼是 HTML Prettifier?
HTML prettifier 是一種將原始或最小化的 HTML 程式碼重新格式化為可閱讀、結構良好格式的工具。 這個過程包括
- 正確縮排嵌套元素
- 關閉未封閉的標籤
- 格式屬性一致
- 移除不必要的空白
在轉換為 PDF 之前使用 HTML 預設程式,可確保內容保持結構化和視覺上的一致性,減少產生的 PDF 中的呈現問題。
IronPDF:功能強大的 PDF 解決方案

IronPDF 是一個全面且功能豐富的 .NET 函式庫,專為 HTML 到 PDF 的無縫轉換而設計。 它能讓開發人員以最小的工作量將 HTML、URL 甚至原始 HTML 字串轉換成高品質的 PDF。 與許多其他 PDF 函式庫不同的是,IronPDF 完全支援 HTML5、CSS3 和 JavaScript 等現代網頁標準,確保呈現的 PDF 能維持預期的設計與排版。 這使得它成為需要從複雜的 HTML 結構精確輸出 PDF 的專案的理想選擇。
IronPDF 的一些主要功能包括:
- Full HTML5 and CSS3 support 以實現精確的渲染。
- JavaScript執行,使PDF中的互動元素成為可能。
- 支援 頁眉、頁腳,以及 watermarks 以強化文件結構。
- PDF簽署和 安全功能用於安全的文件處理。
- 多執行緒處理和最佳化呈現的 高效能。
透過整合 IronPDF 與 HTML prettifier,您可以確保文件不僅視覺上美觀,而且沒有渲染問題,讓您的工作流程更順暢、更有效率。
在 .NET 中美化 HTML
在 .NET 中有幾個可用的函式庫,可以對未格式化或醜陋的 HTML 程式碼進行美化,這些函式庫包括
1.HtmlAgilityPack。
- 用 C# 解析和修改 HTML 程式碼的常用函式庫。
- 可在處理之前用於格式化和清理 HTML 程式碼。
2. AngleSharp。
- 適用於 .NET 的現代化 HTML 解析器,可提供詳細的文件操作功能。
- 能將 HTML 格式化,使其更具可讀性。
3. HTML 美化工具(BeautifyTools)
- 格式和縮排雜亂的 HTML,以獲得更好的可讀性。
- 可直接在瀏覽器中使用的線上工具 - 無需安裝。
使用 HtmlAgilityPack 來格式化 HTML 程式碼

HtmlAgilityPack 是一個流行的 .NET 函式庫,提供快速有效的方式來解析和處理 HTML 文件。 它可以處理畸形或結構不良的 HTML,是網頁搜刮和資料擷取的最佳選擇。 儘管它並非明確設計為"預覽器",但仍可透過解析 HTML 程式碼並以適當的縮排儲存,以清理和格式化 HTML 程式碼。
以下是您如何使用 HtmlAgilityPack 在傳送 HTML 至 IronPDF 前對其進行美化:
using IronPdf;
using HtmlAgilityPack;
using System.IO;
class Program
{
static void Main()
{
string htmlContent = "<html><body><h1>Hello World!</h1><p>This is a test.</p></body></html>";
// Load the HTML content into an HtmlDocument
HtmlDocument doc = new HtmlDocument();
doc.LoadHtml(htmlContent);
// Prettify the HTML by saving it with indentation
// Saves the formatted HTML with the prettified indenting
string prettyHtml = doc.DocumentNode.OuterHtml;
doc.Save("pretty.html"); // Save the pretty HTML to a file
}
}
using IronPdf;
using HtmlAgilityPack;
using System.IO;
class Program
{
static void Main()
{
string htmlContent = "<html><body><h1>Hello World!</h1><p>This is a test.</p></body></html>";
// Load the HTML content into an HtmlDocument
HtmlDocument doc = new HtmlDocument();
doc.LoadHtml(htmlContent);
// Prettify the HTML by saving it with indentation
// Saves the formatted HTML with the prettified indenting
string prettyHtml = doc.DocumentNode.OuterHtml;
doc.Save("pretty.html"); // Save the pretty HTML to a file
}
}
Imports IronPdf
Imports HtmlAgilityPack
Imports System.IO
Friend Class Program
Shared Sub Main()
Dim htmlContent As String = "<html><body><h1>Hello World!</h1><p>This is a test.</p></body></html>"
' Load the HTML content into an HtmlDocument
Dim doc As New HtmlDocument()
doc.LoadHtml(htmlContent)
' Prettify the HTML by saving it with indentation
' Saves the formatted HTML with the prettified indenting
Dim prettyHtml As String = doc.DocumentNode.OuterHtml
doc.Save("pretty.html") ' Save the pretty HTML to a file
End Sub
End Class
輸出 HTML 檔案

使用 AngleSharp 作為 HTML 裝飾。

AngleSharp 是一個 .NET 函式庫,專為解析和處理 HTML、XML 和 SVG 文件而設計。 它提供了一種現代化且靈活的 DOM 操作和格式化方法。 AngleSharp 的 HtmlFormatter 類可用於格式化 HTML 內容,提供美觀、可讀的輸出。
using AngleSharp.Html.Parser;
using System;
class Program
{
static void Main()
{
string htmlContent = "<html><body><h1>Hello World!</h1><p>This is a test.</p></body></html>";
// Parse the HTML content using HtmlParser
var parser = new HtmlParser();
var document = parser.ParseDocument(htmlContent);
// Format the HTML using AngleSharp’s HtmlFormatter
var prettyHtml = document.ToHtml();
}
}
using AngleSharp.Html.Parser;
using System;
class Program
{
static void Main()
{
string htmlContent = "<html><body><h1>Hello World!</h1><p>This is a test.</p></body></html>";
// Parse the HTML content using HtmlParser
var parser = new HtmlParser();
var document = parser.ParseDocument(htmlContent);
// Format the HTML using AngleSharp’s HtmlFormatter
var prettyHtml = document.ToHtml();
}
}
Imports AngleSharp.Html.Parser
Imports System
Friend Class Program
Shared Sub Main()
Dim htmlContent As String = "<html><body><h1>Hello World!</h1><p>This is a test.</p></body></html>"
' Parse the HTML content using HtmlParser
Dim parser = New HtmlParser()
Dim document = parser.ParseDocument(htmlContent)
' Format the HTML using AngleSharp's HtmlFormatter
Dim prettyHtml = document.ToHtml()
End Sub
End Class
HTML 輸出。

線上 HTML 美化程式 (BeautifyTools)

BeautifyTools.com提供易於使用的線上 HTML 格式化工具,可讓您格式化和美化雜亂的 HTML 程式碼。 如果您想要快速、免費地清理 HTML,而不需要安裝任何程式庫或撰寫程式碼,這將非常有用。
如何使用線上 HTML 美化程式
1.前往網站
在您的網頁瀏覽器中開啟 [BeautifyTools.com](http://BeautifyTools.com) [HTML Beautifier](https://beautifytools.com/html-beautifier.php)。
2.貼上您的 HTML
複製您的原始或最小化 HTML 並貼到輸入框中。
3.調整設定(可選)
* 選擇縮排等級(空格:2、4 等)。
* 啟用/停用換行和格式化選項。
4.點選"美化 HTML"。
該工具將處理您的 HTML,並在輸出框中顯示經過修飾的結果。
5.複製格式化的 HTML。
按一下"複製到剪貼簿"或手動複製格式化的 HTML,以便在您的專案中使用。

使用線上美化工具的利弊

使用基於程式碼的 HTML 裝飾程式的利弊

使用 IronPDF 將 Prettified HTML 轉換為 PDF.
當我們修飾好 HTML 之後,就可以使用 IronPDF 將它轉換成高品質的 PDF。 以下是一個使用 AngleSharp 的簡單範例:
using AngleSharp.Html.Parser;
using System.IO;
using IronPdf;
using System;
class Program
{
static void Main()
{
string htmlContent = "<html><body><h1>Hello World!</h1><p>This was formatted using AngleSharp.</p><p>Then it was converted using IronPDF.</p></body></html>";
// Parse the HTML content using HtmlParser
var parser = new HtmlParser();
var document = parser.ParseDocument(htmlContent);
// Format the HTML using PrettyMarkupFormatter
using (var writer = new StringWriter())
{
document.ToHtml(writer, new PrettyMarkupFormatter()); // Format the HTML
var prettyHtml = writer.ToString();
// Save the formatted HTML to a file
string outputPath = "formatted.html";
File.WriteAllText(outputPath, prettyHtml);
Console.WriteLine(prettyHtml);
}
// Convert the formatted HTML to PDF using IronPdf
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlFileAsPdf("formatted.html");
pdf.SaveAs("output.pdf");
}
}
using AngleSharp.Html.Parser;
using System.IO;
using IronPdf;
using System;
class Program
{
static void Main()
{
string htmlContent = "<html><body><h1>Hello World!</h1><p>This was formatted using AngleSharp.</p><p>Then it was converted using IronPDF.</p></body></html>";
// Parse the HTML content using HtmlParser
var parser = new HtmlParser();
var document = parser.ParseDocument(htmlContent);
// Format the HTML using PrettyMarkupFormatter
using (var writer = new StringWriter())
{
document.ToHtml(writer, new PrettyMarkupFormatter()); // Format the HTML
var prettyHtml = writer.ToString();
// Save the formatted HTML to a file
string outputPath = "formatted.html";
File.WriteAllText(outputPath, prettyHtml);
Console.WriteLine(prettyHtml);
}
// Convert the formatted HTML to PDF using IronPdf
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlFileAsPdf("formatted.html");
pdf.SaveAs("output.pdf");
}
}
Imports AngleSharp.Html.Parser
Imports System.IO
Imports IronPdf
Imports System
Friend Class Program
Shared Sub Main()
Dim htmlContent As String = "<html><body><h1>Hello World!</h1><p>This was formatted using AngleSharp.</p><p>Then it was converted using IronPDF.</p></body></html>"
' Parse the HTML content using HtmlParser
Dim parser = New HtmlParser()
Dim document = parser.ParseDocument(htmlContent)
' Format the HTML using PrettyMarkupFormatter
Using writer = New StringWriter()
document.ToHtml(writer, New PrettyMarkupFormatter()) ' Format the HTML
Dim prettyHtml = writer.ToString()
' Save the formatted HTML to a file
Dim outputPath As String = "formatted.html"
File.WriteAllText(outputPath, prettyHtml)
Console.WriteLine(prettyHtml)
End Using
' Convert the formatted HTML to PDF using IronPdf
Dim renderer = New ChromePdfRenderer()
Dim pdf = renderer.RenderHtmlFileAsPdf("formatted.html")
pdf.SaveAs("output.pdf")
End Sub
End Class
說明
上面的程式碼示範如何使用 AngleSharp 來美化 HTML,然後再使用 IronPDF 將它轉換成 PDF。 工作方式如下
1.定義原始 HTML 內容:
程式以簡單的 HTML 字串開始,其中包含一個 `<h1>` 標題和兩個段落。
2.使用 AngleSharp 解析 HTML:
它初始化一個 `HtmlParser` 實例,並將原始 HTML 解析為結構化的 IDocument 物件。
3.使用 PrettyMarkupFormatter 格式化 HTML:
* `PrettyMarkupFormatter` 類別用於正確格式化和縮排 HTML。
* 使用 `StringWriter` 將格式化的 HTML 捕獲為字串。
* 格式化之後,格式化的 HTML 會儲存到一個名為 **"formatted.html"**的檔案中。
4.使用 IronPDF 將格式化的 HTML 轉換為 PDF:
* 建立一個 `ChromePdfRenderer` 實例來處理轉換。
* 格式化的 HTML 檔案被載入並轉換為 `PdfDocument`。
* 結果 PDF 會儲存為 **"output.pdf"**。
5.最終輸出:
* 經過修飾的 HTML 會顯示在控制台中。
* 程式會產生兩個輸出檔案:
* **formatted.html**(結構良好的 HTML 版本)
* **output.pdf**(由格式化的 HTML 產生的最終 PDF 文件)。
此方法可確保 HTML 在轉換成 PDF 之前結構整齊,以提高可讀性,並避免 PDF 輸出中可能出現的渲染問題。
控制台輸出

PDF輸出

為什麼要使用 IronPDF 的 Prettifier?
1.更好的可讀性和調試性。
格式化的 HTML 更容易閱讀、除錯和維護。 這在處理動態內容或大型 HTML 模板時特別有用。
2.改進的樣式一致性
Prettified HTML 可保持一致的間距和結構,從而使 IronPDF 的渲染更具可預測性。
3.減少呈現問題
最小化或非結構化的 HTML 有時可能會在 PDF 產生過程中造成意想不到的問題。 修飾有助於防止元素遺失或版面破損。
4.簡化自動化工作流程
如果您的應用程式以程式化的方式產生 PDF,在轉換之前確保 HTML 是乾淨且格式良好的,可提高穩定性和精確度。
結論
在 .NET 中使用 IronPDF 的 HTML 預覽器是增強 PDF 轉換的簡單而有效的方法。 透過正確的 HTML 結構,您可以確保更好的呈現、更佳的可維護性,以及更少令人頭痛的除錯問題。
有了 HtmlAgilityPack、AngleSharp 和 HTML Beautifier 等函式庫,在 PDF 產生之前修飾 HTML 將變得輕而易舉。 如果您經常處理 HTML-to-PDF轉換,請考慮在工作流程中整合HTML prettifier,以獲得最佳效果。
今天就試試看,看看它如何提升您的 IronPDF 使用體驗! 下載免費試用版,開始探索IronPDF在您專案中提供的所有功能。
常見問題解答
在將HTML轉換為PDF之前使用HTML美化工具的目的是什么?
在將HTML轉換為PDF之前使用HTML美化工具可以確保HTML代碼干凈、結構良好且可讀。這個過程有助於防止渲染問題,並確保最終PDF輸出保持預期的設計和佈局。
如何在 .NET 中將 HTML 轉換為 PDF?
您可以使用IronPDF(一個.NET庫)將HTML轉換為PDF。IronPDF支持HTML5、CSS3和JavaScript,確保在PDF中準確渲染復雜的HTML結構。
在.NET中有哪些可用的HTML美化庫?
如HtmlAgilityPack和AngleSharp等庫可用於在.NET中美化HTML。這些庫有助於解析、操作和格式化HTML文檔,以確保它們結構良好且干凈。
HtmlAgilityPack如何協助格式化HTML?
HtmlAgilityPack透過解析和操作HTML文檔來協助格式化HTML,即便這些文檔格式不正確。它可以以正確的縮進格式化HTML代碼,使其適合用於網頁抓取和數據提取任務。
使用AngleSharp進行HTML格式化的好處是什么?
AngleSharp提供現代的DOM操作能力,並使用其HtmlFormatter類格式化HTML。它允許開發人員將HTML內容解析並格式化為易讀的輸出,尤其是在將HTML轉換為PDF之前非常有用。
我能否在線美化HTML而無需安裝任何軟體?
是的,您可以使用像BeautifyTools.com這樣的工具線上美化HTML,提供一種不需安裝任何庫或寫代碼即可快速免費清理HTML代碼的方法。
在選擇HTML到PDF轉換庫時,我應該尋找哪些功能?
選擇HTML到PDF轉換庫時,應尋找以下功能:完整的HTML5和CSS3支持,JavaScript執行,支持頁眉、頁腳和水印,PDF簽名和安全功能,以及多線程處理的高效性能,這些功能都由IronPDF提供。
HTML格式化如何改善PDF輸出質量?
HTML格式化透過確保HTML在轉換之前結構整齊且無錯誤來改善PDF輸出質量。這可防止渲染問題,並生成更高質量、更準確的PDF文檔。



