產品比較 IronPDF vs iTextSharp HTML to PDF with Header and Footer in PDF Document Curtis Chau 發表日期:12月 3, 2025 下載 IronPDF NuGet 下載 DLL 下載 Windows 安裝程式 開始免費試用 法學碩士副本 法學碩士副本 將頁面複製為 Markdown 格式,用於 LLMs 在 ChatGPT 中打開 請向 ChatGPT 諮詢此頁面 在雙子座打開 請向 Gemini 詢問此頁面 在雙子座打開 請向 Gemini 詢問此頁面 打開困惑 向 Perplexity 詢問有關此頁面的信息 分享 在 Facebook 上分享 分享到 X(Twitter) 在 LinkedIn 上分享 複製連結 電子郵件文章 對於商業報告、發票和文件而言,建立具有一致標題和頁尾的專業 PDF 文件至關重要。 如果您正在使用 iTextSharp 為 PDF 檔案新增頁首和頁尾,您就會知道這個過程涉及到執行頁首和管理複雜的定位程式碼。 讓我們在比較兩種方法的同時,探索 IronPDF 如何簡化這個流程。 使用iTextSharpHTML 轉 PDF(含頁首和頁尾實作)會遇到哪些挑戰? 使用iTextSharp工作需要實作 `PdfPageEventHelper` 類,並覆寫 `OnEndPage` 方法以新增頁首和頁尾。 此方法涉及對 `PdfContentByte` 物件的直接操作和精確的座標計算。 ```cs public class HeaderFooterEvent : PdfPageEventHelper { public override void OnEndPage(PdfWriter writer, Document document) { PdfContentByte cb = writer.DirectContent; // Add header with text ColumnText.ShowTextAligned(cb, Element.ALIGN_CENTER, new Phrase("Company Report", new Font(Font.FontFamily.HELVETICA, 12)), document.PageSize.Width / 2, document.PageSize.Height - 30, 0); // Add footer with page numbers string footerText = $"Page {writer.PageNumber}"; ColumnText.ShowTextAligned(cb, Element.ALIGN_RIGHT, new Phrase(footerText, new Font(Font.FontFamily.HELVETICA, 10)), document.PageSize.Width - 40, 30, 0); } } // Usage PdfWriter writer = PdfWriter.GetInstance(document, stream); writer.PageEvent = new HeaderFooterEvent(); ``` ### 附有頁首與頁尾的 PDF 文件  此程式碼示範iTextSharp所需的手動定位 - 您需要計算精確的座標、分開管理字型,並透過 `DirectContent` 處理渲染。 IronPDF 如何簡化頁眉、頁尾的建立? IronPDF 以其直觀的 API 改變了頁首和頁尾的建立過程。 您可以透過 `ChromePdfRenderer` 上的簡單屬性設定來設定頁首和頁尾,而不是實作事件處理程式: ```cs var renderer = new ChromePdfRenderer(); // Add text header renderer.RenderingOptions.TextHeader.CenterText = "Company Report"; renderer.RenderingOptions.TextHeader.DrawDividerLine = true; renderer.RenderingOptions.TextHeader.FontSize = 12; // Add text footer with page numbers renderer.RenderingOptions.TextFooter.RightText = "Page {page} of {total-pages}"; renderer.RenderingOptions.TextFooter.LeftText = "{date}"; renderer.RenderingOptions.TextFooter.FontSize = 10; var PDF = renderer.RenderHtmlAsPdf(htmlContent); ``` ###IronPDFOutput with Headers and Footers(帶有頁首和頁尾的IronPDF輸出)。 。 IronPDF 的差異立即顯現 -IronPDF可自動處理定位、邊緣和渲染,同時提供內建的動態內容占位符。 |特點|iTextSharp|IronPDF| | --- | --- | --- | |實施方法|`PdfPageEventHelper` 類別|`RenderingOptions` 屬性| |程式碼複雜性|複雜的坐標計算|簡單的屬性指派| |頁數|使用 `writer.PageNumber` 進行手動追蹤|內建 `{page}` 占位符| |HTML 支援|有限制,需要 XMLWorker|支援原生 HTML 標頭| |保證金管理|手動計算|自動調整| |動態內容|客製化實作|預定義的占位符| |學習曲線|陡峭|溫柔| 如何使用頁碼來新增頁眉、頁尾? 頁碼是 PDF 文件的一般要求。 使用 iTextSharp,您必須手動追蹤目前的頁數及總頁數: ```cs //iTextSharpapproach public override void OnEndPage(PdfWriter writer, Document document) { PdfPTable footerTable = new PdfPTable(3); footerTable.TotalWidth = document.PageSize.Width - document.LeftMargin - document.RightMargin; PdfPCell leftCell = new PdfPCell(new Phrase(DateTime.Now.ToString("dd/MM/yyyy"))); PdfPCell centerCell = new PdfPCell(new Phrase("Confidential")); PdfPCell rightCell = new PdfPCell(new Phrase($"Page {writer.PageNumber}")); footerTable.AddCell(leftCell); footerTable.AddCell(centerCell); footerTable.AddCell(rightCell); footerTable.WriteSelectedRows(0, -1, document.LeftMargin, document.PageSize.GetBottom(document.BottomMargin), writer.DirectContent); } ``` IronPDF 利用內建的占位符簡化了這項工作: ```cs //IronPDFapproach renderer.RenderingOptions.TextFooter.LeftText = "{date} {time}"; renderer.RenderingOptions.TextFooter.CenterText = "Confidential"; renderer.RenderingOptions.TextFooter.RightText = "Page {page} of {total-pages}"; renderer.RenderingOptions.MarginBottom = 25; // Ensure proper spacing ``` 您可以建立具有動態內容的 HTML 標頭嗎? 對於包含公司標誌、樣式文字或表格的複雜佈局,HTML 標題提供了絕佳的靈活性。IronPDF在這方面的優勢在於其原生 HTML 支援: ```cs //IronPDFHTML header with company logo renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter() { HtmlFragment = @" Annual Report 2024 ", MaxHeight = 50, BaseUrl = "https://mycompany.com/assets/" }; // HTML footer with styled page numbers renderer.RenderingOptions.HtmlFooter = new HtmlHeaderFooter() { HtmlFragment = "Page {page} of {total-pages}", DrawDividerLine = true }; ``` ### 標誌圖片的標題  使用 iTextSharp,實現 HTML 標頭需要額外的函式庫,例如 XMLWorker 和複雜的解析程式碼。 哪種方法提供更好的效能和彈性? 雖然兩個函式庫都能有效地處理頁首和頁尾,但IronPDF的方法可大幅減少開發時間。 該函式庫會自動管理預定義的頁邊,調整版面以防止內容重疊。 與iTextSharp的 AGPL 授權相比,IronPdf 的授權模式提供商業友好的條款,除非您購買商業授權,否則必須開放您的應用程式。 對於已經熟悉iTextSharp的頁面事件系統的開發人員而言,學習曲線是存在的,但 IronPdf 的說明文件和範例可以讓他們順利過渡。 使用 CSS 設定樣式和 HTML 進行排版的能力開啟了在iTextSharp中需要大量自訂程式碼的可能性。 ## 結論 在新的文件實例中加入頁首和頁尾,不一定要涉及複雜的事件處理和坐標計算。iTextSharp的方法透過頁面事件和直接內容操作提供細緻的控制,而IronPDF則透過其基於屬性的組態和原生 HTML 支援提供更直覺的解決方案。 當考慮到開發速度、可維護性以及製作專業文件的難易度時,選擇就變得很清楚了。IronPDF對於頁首和頁尾的處理方式是現代 PDF 生成的典範,功能強大且易於使用。 準備好簡化您的 PDF 標題與頁尾的製作了嗎? [開始免費試用](trial-license),體驗與眾不同之處。 對於希望簡化文件生成工作流程的團隊,請探索我們的 [授權選項](License),找出最適合您專案的方案。 請注意iTextSharp 是其各自擁有者的註冊商標。 本網站與iTextSharp無任何關聯、背書或贊助。所有產品名稱、標誌和品牌均為其各自所有者的財產。 比較資料僅供參考,並反映撰寫時的公開資訊。 常見問題解答 IronPDF 和 iTextSharp 在添加页眉和页脚方面的主要区别是什么? IronPDF 藉由允許 HTML 標頭,簡化了在 PDF 中加入標頭與頁尾的程序,相較於 iTextSharp 的定位程式碼,IronPDF 可以更直覺、更靈活。 IronPDF 如何簡化頁面標頭的添加? IronPdf 允許您使用 HTML 來建立頁頭,相較於 iTextSharp 所需的複雜定位程式碼,IronPDF 可讓您有更直接熟悉的編碼體驗。 是否可以在 IronPDF 中使用 HTML 自訂標頭? 是的,IronPDF 支持基于 HTML 的页眉和页脚,使其更易于根据需要进行自定义和样式化。 使用 IronPDF 製作商業報表有什麼好處? IronPdf 簡化了在商業報表中建立一致的頁首和頁尾的工作,降低了實施的複雜性和所需時間,尤其是與 iTextSharp 相比。 IronPDF 可以處理頁首和頁尾的頁碼嗎? 是的,IronPDF 可以無縫管理頁眉、頁腳內的頁碼,讓文件呈現更專業。 IronPDF 和 iTextSharp 在易用性方面相比如何? 由於 IronPDF 支援標題和頁尾的 HTML 元素,因此一般認為 IronPDF 比較容易使用,與 iTextSharp 較複雜的編碼要求形成對比。 IronPDF 是否支持標頭中的動態內容? 是的,IronPDF 可以使用 HTML 將日期或頁碼等動態內容納入頁首和頁尾。 是什麼讓 IronPdf 更適合文件專案? IronPdf 整合 HTML 作為頁首和頁尾的能力,使其非常適用於需要一致樣式和易於更新的文件專案。 我可以使用 IronPDF 自訂標頭的發票嗎? 當然,IronPDF 非常適合用自訂標頭來建立發票,這要歸功於它支援 HTML 且易於實作。 Curtis Chau 立即與工程團隊聊天 技術作家 Curtis Chau 擁有卡爾頓大學計算機科學學士學位,專注於前端開發,擅長於 Node.js、TypeScript、JavaScript 和 React。Curtis 熱衷於創建直觀且美觀的用戶界面,喜歡使用現代框架並打造結構良好、視覺吸引人的手冊。除了開發之外,Curtis 對物聯網 (IoT) 有著濃厚的興趣,探索將硬體和軟體結合的創新方式。在閒暇時間,他喜愛遊戲並構建 Discord 機器人,結合科技與創意的樂趣。 相關文章 發表日期 12月 18, 2025 哪個 ASP PDF 函式庫能為 .NET Core 開發帶來最大價值? 發現適用於 ASP.NET Core 應用程式的最佳 PDF 庫。比較 IronPDF 的 Chrome 引擎與 Aspose 和 Syncfusion 的替代方案。 閱讀更多 發表日期 12月 3, 2025 使用 IronPDF 解決 iTextSharp HTML to PDF 中的 「文件無頁 」錯誤 iTextSharp HTML to PDF 在解析失敗時不會發生頁面錯誤。瞭解 XMLWorker 為何會有同樣的問題,並發現 IronPDF 可靠的 HTML 轉換解決方案。 閱讀更多 發表日期 11月 27, 2025 在 MVC 中使用 iTextSharp 與 IronPDF 生成 PDF:完整比較 比較在 ASP.NET MVC 中使用 iTextSharp vs IronPDF 的 PDF 產生方法。發現哪個函式庫能提供更好的 HTML 呈現以及更容易的實作。 閱讀更多 哪個 ASP PDF 函式庫能為 .NET Core 開發帶來最大價值?使用 IronPDF 解決 iTextSharp HT...
發表日期 12月 18, 2025 哪個 ASP PDF 函式庫能為 .NET Core 開發帶來最大價值? 發現適用於 ASP.NET Core 應用程式的最佳 PDF 庫。比較 IronPDF 的 Chrome 引擎與 Aspose 和 Syncfusion 的替代方案。 閱讀更多
發表日期 12月 3, 2025 使用 IronPDF 解決 iTextSharp HTML to PDF 中的 「文件無頁 」錯誤 iTextSharp HTML to PDF 在解析失敗時不會發生頁面錯誤。瞭解 XMLWorker 為何會有同樣的問題,並發現 IronPDF 可靠的 HTML 轉換解決方案。 閱讀更多
發表日期 11月 27, 2025 在 MVC 中使用 iTextSharp 與 IronPDF 生成 PDF:完整比較 比較在 ASP.NET MVC 中使用 iTextSharp vs IronPDF 的 PDF 產生方法。發現哪個函式庫能提供更好的 HTML 呈現以及更容易的實作。 閱讀更多