跳至頁尾內容
使用 IRONPDF

C# 中 html2pdf 分頁符號已修復(開發者教學)

在現代企業中,電子文檔是共享資訊和進行視覺演示的典型場所。 然而,有時資訊會在一個頁面上變得非常雜亂,導致資訊過載,以至於很難理解哪些內容與主題相關。 因此,常見的策略是設定分頁符,以便演講者能夠清晰地傳達訊息,並讓讀者看到文件中清晰劃分的各個部分。

雖然文件中常會用到分頁符,但手動調整分頁符號既麻煩又不方便擴充。 對於需要建立成千上萬份文件的公司來說,自動添加分頁符號要高效得多,也更理想。 這樣一來,開發人員就可以自訂格式並套用到他們選擇的文件中。

在本文中,我們將討論如何使用名為IronPDF的 C# PDF 庫來新增分頁符號。 IronPDF 的直覺性使開發人員能夠快速地在多種形式的內容上設定分頁符號。 我們還將討論如何使用該程式庫及其自訂功能和靈活性,以建立具有分頁符號的視覺吸引力的文件。

IronPDF:C# PDF 庫

C# 中 html2pdf 分頁符號已修復(開發者教學):圖 1

IronPDF 是一個靈活、易用、高度可自訂的 C# PDF 庫,可讓開發人員、初學者或經驗豐富的開發人員完全操作和編輯 PDF。 它為開發者提供了多種方法,可以將 HTML、RTF 和圖像等不同格式轉換為 PDF,並進一步編輯轉換為 PDF 時的渲染方式。 此外,IronPDF 使用 Chrome 渲染引擎,因此在渲染 HTML 字串方面非常熟練,並且允許開發人員進一步使用CSS 樣式來自訂 HTML 文檔,從而為開發人員在自訂和視覺呈現方面提供其他任何地方都找不到的優勢。

由於該庫使用 Chrome 渲染引擎,因此在渲染 HTML 時所見即所得,這使得它非常適合創建分頁符模板等操作,從而避免模板不匹配的情況。 這完全取決於您在將範本轉換為 PDF 時的設計方式。

在 PDF 中新增分頁符

為了說明該程式庫的靈活性和易用性,我們將使用一個程式碼範例來展示如何以程式設計方式新增分頁符號。

在這種情況下,我們將使用基於表格的 PDF 作為輸入,我們將看到立即添加分頁符號和之後添加分頁符號在視覺清晰度方面的差異。

許可證密鑰

開始之前,請記住 IronPDF 需要許可證密鑰才能運作。 您可以點擊此連結以取得免費試用金鑰。

// Replace the license key variable with the trial key you obtained
IronPdf.License.LicenseKey = "REPLACE-WITH-YOUR-KEY";
// Replace the license key variable with the trial key you obtained
IronPdf.License.LicenseKey = "REPLACE-WITH-YOUR-KEY";
$vbLabelText   $csharpLabel

收到試用金鑰後,在您的專案中設定此變量,即可完成設定。

輸入PDF

我們將使用以下 PDF 檔案作為範例的輸入。 這是一個簡單的表格,資料分散在不同的區域中,難以區分內容的邊界。

! C# 中 html2pdf 分頁符號已修復(開發者教學):圖 2

程式碼範例用法

using IronPdf; // Import the IronPdf library

// Define the HTML content, including a table and an image
const string html = @"
  <table style='border: 1px solid #000000'>
    <tr>
      <th>Company</th>
      <th>Product</th>
    </tr>
    <tr>
      <td>Iron Software</td>
      <td>IronPDF</td>
    </tr>
    <tr>
      <td>Iron Software</td>
      <td>IronOCR</td>
    </tr>
  </table>
  <div style='page-break-after: always;'> </div> <!-- Ensures a page break after the table -->
  <img src='https://ironpdf.com/img/products/ironpdf-logo-text-dotnet.svg'>";

// Create an instance of ChromePdfRenderer
var renderer = new ChromePdfRenderer();

// Render the HTML content into a PDF
var pdf = renderer.RenderHtmlAsPdf(html);

// Save the PDF as "Page_Break.pdf"
pdf.SaveAs("Page_Break.pdf");
using IronPdf; // Import the IronPdf library

// Define the HTML content, including a table and an image
const string html = @"
  <table style='border: 1px solid #000000'>
    <tr>
      <th>Company</th>
      <th>Product</th>
    </tr>
    <tr>
      <td>Iron Software</td>
      <td>IronPDF</td>
    </tr>
    <tr>
      <td>Iron Software</td>
      <td>IronOCR</td>
    </tr>
  </table>
  <div style='page-break-after: always;'> </div> <!-- Ensures a page break after the table -->
  <img src='https://ironpdf.com/img/products/ironpdf-logo-text-dotnet.svg'>";

// Create an instance of ChromePdfRenderer
var renderer = new ChromePdfRenderer();

// Render the HTML content into a PDF
var pdf = renderer.RenderHtmlAsPdf(html);

// Save the PDF as "Page_Break.pdf"
pdf.SaveAs("Page_Break.pdf");
$vbLabelText   $csharpLabel
  1. 我們先導入IronPdf模組。
  2. 上面顯示的 HTML 字串表示要轉換為 PDF 的內容。 這<div style="page-break-after:> always;"> </div>新增標籤是為了確保表格後出現分頁符號。
  3. 然後我們實例化 PDF 渲染器。
  4. 我們將 HTML 字串傳遞給RenderHtmlAsPdf方法。
  5. 最後,將文件另存為Page_Break.pdf

更常見的方法是使用 CSS 進行頁面分隔,而不是使用 HTML 進行內聯樣式設定。

輸出 PDF

! C# 中 html2pdf 分頁符號已修復(開發者教學):圖 3

如您所見,輸出結果在表格之後立即插入了分頁符號。

使用 CSS 控制分頁符

由於 IronPDF 可以使用 CSS 進行自訂(因為它使用 Chrome 渲染引擎),我們可以利用這一點,使用 CSS 向特定元素添加分頁符,並在元素內部添加分頁符,還可以指定哪些元素內部不應該有分頁符。

例如,雖然在上圖中,分頁符號出現在表格之後,但有時由於表格內容雜亂,分頁符號可能會出現在表格內部。

為了避免這種情況,我們可以對節點使用特定的 CSS 樣式,並指定我們不想在節點內新增分頁符號。

<div style='page-break-inside: avoid'>
 <img src='no-break-me.png'>
</div>
<div style='page-break-inside: avoid'>
 <img src='no-break-me.png'>
</div>
HTML

新增page-break-inside: avoid可防止元素內部出現分頁符號。 但是,在執行此操作時,請確保將其套用至元素的父 div 節點。

對於想要新增分頁符號樣式的元素,也可以使用類似的操作。

<div style="page-break-inside: avoid;">
    <img src="no-break-me.png">
</div>
<div style="page-break-inside: avoid;">
    <img src="no-break-me.png">
</div>
HTML

由於我們可以使用 HTML,我們可以透過 JavaScript 的document.getElementById ,利用元素的 ID 選擇元素,從而進一步細化 HTML 節點樹,並確保每個節點都是完全可自訂的。

優化影像品質和檔案大小

分頁符號設定也與影像品質密切相關。 您需要確保分頁符號設定不會因縮小或縮放下一頁的影像而影響影像品質。

因此,我們可以使用 CSS 來確保在應用分頁符號時,各個模板中的圖像品質保持一致。

<div class="no-break">
    <img src="optimized-image.jpg" alt="Optimized Image" style="width:100%; height:auto;">
</div>
<div class="no-break">
    <img src="optimized-image.jpg" alt="Optimized Image" style="width:100%; height:auto;">
</div>
HTML

上面的 CSS 樣式確保在頁面分頁操作後圖片保持一致。 我們首先將寬度設定為頁面的 100%,高度可以自動縮放以保持寬高比。

此外,IronPDF 在處理 HTML 時還提供額外的渲染選項,類似於使用者為可下載列印的 PDF 提示設定的列印選項。有關屬性的完整列表,請參閱API 文件

使用 JavaScript 的對應部分

由於IronPDF具有使用 Chrome 渲染引擎的優勢,因此它還提供了一個 Node.js 版本,讓不同背景的開發人員都能使用這個強大的函式庫。

使用 Node.js 版本,開發人員可以更精細地控制添加分頁符,因為您可以存取基於 Promise 的用法和方法,例如用於偵錯或進度追蹤的onRejected Promise 方法及其中間函數。

html2pdf等常用函式庫及其jsPDF 物件的輸出方法相比,IronPDF 更加靈活,支援多種語言,允許具有不同語言專長的開發人員在同一個專案上工作。

結論

! C# 中 html2pdf 分頁符號已修復(開發者教學):圖 4

了解如何使用分頁符號以及 CSS 如何影響整個 HTML,對於建立美觀且對使用者有吸引力的文件至關重要。 它允許讀者對正在閱讀的資訊進行分類,以避免資訊過載和混亂。 在本文中,我們討論如何利用 IronPDF 強大的 Chrome 渲染引擎自動建立分頁模板,從而提高模板和自動化的效率和可擴展性,並降低人為錯誤的風險。

對於想要試用 IronPDF 的開發者,該庫提供$799及以上級別的免費試用版

常見問題解答

如何在C#中為PDF新增分頁符號?

您可以使用 IronPDF 的 CSS 在 PDF 中加入分頁符號。使用類似page-break-after: always;的樣式可以控制在將 HTML 轉換為 PDF 時分頁符號的位置。

CSS 在 C# 產生 PDF 的過程中扮演什麼角色?

在使用 IronPDF 從 HTML 產生 PDF 時,CSS 對於控制佈局和外觀至關重要。它允許開發人員管理分頁符號並確保整個文件格式的一致性。

Chrome渲染引擎如何幫助HTML轉PDF轉換?

IronPDF 使用 Chrome 渲染引擎,以確保 PDF 輸出與 HTML 輸入高度一致。這種一致性對於在轉換過程中保持預期的設計和佈局至關重要。

手動在 PDF 中插入分頁符號會遇到哪些挑戰?

手動插入分頁符號效率低且容易出錯,尤其是在處理大型文件時。 IronPDF 可以自動完成此流程,讓開發人員專注於內容創作,而不是格式問題。

如何確保帶有分頁符號的PDF檔案中影像品質高?

為了保持 PDF 中的圖像質量,請使用 CSS 正確設定圖像尺寸。在 IronPDF 中,您可以套用類似width: 100%;height: auto;的樣式,以確保影像能夠正確縮放。

能否利用 JavaScript 在 PDF 轉換前自訂 HTML?

是的,IronPDF 支援 JavaScript,使開發人員能夠在將 HTML 內容轉換為 PDF 之前對其進行動態操作。這增強了自訂和呈現效果。

在文件建立過程中自動分頁有哪些優點?

使用 IronPDF 自動分頁可以提高效率並減少錯誤,從而在企業環境中實現一致且專業的文件呈現。

我該如何開始使用 C# 函式庫進行 PDF 處理?

若要開始使用 IronPDF,請從其網站取得免費試用版的授權金鑰。將該庫整合到您的 C# 專案中,即可開始處理 PDF 文件。

為什麼掌握分頁技巧對文件簡報很重要?

掌握分頁技巧可以確保文件結構良好、易於閱讀,有助於避免資訊過載,並提高整體呈現品質。

.NET 版本支援:IronPDF 支援哪些 .NET 版本進行 HTML 到 PDF 的轉換以及分頁功能?

IronPDF 支援所有現代 .NET 版本(包括 .NET 10、.NET 9、.NET 8、.NET 7、.NET 6、.NET Core 和 .NET Framework)上的 HTML 轉 PDF 功能和 CSS 分頁符號功能。它在這些版本中使用相同的渲染引擎 API,以確保行為的一致性。

柯蒂斯·週
技術撰稿人

Curtis Chau擁有卡爾頓大學電腦科學學士學位,專長於前端開發,精通Node.js、TypeScript、JavaScript和React。他熱衷於打造直覺美觀的使用者介面,喜歡使用現代框架,並擅長撰寫結構清晰、視覺效果出色的使用者手冊。

除了開發工作之外,柯蒂斯對物聯網 (IoT) 也抱有濃厚的興趣,致力於探索硬體和軟體整合的創新方法。閒暇時,他喜歡玩遊戲和製作 Discord 機器人,將他對科技的熱愛與創造力結合。