跳過到頁腳內容
USING IRONPDF

How to Create PDFs Using Aspose.PDF

Aspose PDF 和 IronPDF 都允許您以程式設計方式建立 PDF 文檔,其中 IronPDF 提供使用Chrome 渲染的更簡單的HTML 到 PDF 轉換,而 Aspose PDF 則透過其文件物件模型提供精細的控制。

IronPDF C# PDF 庫主頁橫幅展示了其主要功能,包括 HTML 轉 PDF、PDF 編輯功能、靈活的部署選項以及免費試用。

需要哪些先決條件?

在開始建立 PDF 檔案之前,請確保您已具備以下條件:

  • .NET Framework 4.6.2+ 或 .NET Core 3.1+
  • Visual Studio 2019 或相容的整合開發環境
  • 具備 C# 程式設計基礎知識
  • NuGet 套件管理器已配置
  • 軟體包安裝的管理權限

對於雲端部署,其他要求包括正確的容器配置和執行時間權限。 這兩個函式庫都支援WindowsLinuxmacOS環境,但每個平台都有特定的安裝注意事項。

跨平台支援圖展示了與 C#、F# 和 VB.NET 在多個 .NET 版本、作業系統和部署環境(包括 Windows、Linux、Mac、Docker、Azure 和 AWS)上的相容性

如何安裝 Aspose PDF 和 IronPDF?

如何透過軟體套件管理器控制台安裝 Aspose PDF?

在 Visual Studio 中開啟程式包管理器控制台,並執行以下命令:

PM> Install-Package Aspose.PDF
PM> Install-Package Aspose.PDF
This command is a package manager command for installing a NuGet package and is not directly translatable to VB.NET code. If you are looking to use the Aspose.PDF library in a VB.NET project, you would typically add the package via the NuGet Package Manager in Visual Studio or use a similar command in the Package Manager Console. If you have specific C# code using Aspose.PDF that you need converted to VB.NET, please provide that code.
$vbLabelText   $csharpLabel

安裝過程會下載 Aspose.PDF 及其相依性。 該庫大約需要 150MB 的磁碟空間,並包含完整的文件。 對於進階安裝場景,您可能需要手動配置其他依賴項。

Visual Studio 中的套件管理器控制台顯示 Aspose.PDF 版本 25.10.0 及其相依性已成功安裝

如何安裝 IronPDF?

使用相同的方法安裝 IronPDF:

PM> Install-Package IronPdf
PM> Install-Package IronPdf
SHELL

IronPDF 安裝程式會自動包含 Chrome 渲染引擎和所有必要的相依性。 對於Docker 部署,可能需要額外的配置來確保正確的渲染功能。

套件管理器控制台顯示 IronPDF NuGet 套件的安裝進度,正在下載多個依賴項

為什麼 IronPDF 要內建 Chrome 引擎?

IronPDF 內建Chrome 引擎,可實現卓越的 HTML 渲染效果,並支援 Windows、Linux、macOS、 Docker 容器和雲端平台。 這確保了像素級的完美渲染效果,與 Chrome 瀏覽器中看到的效果完全一致,包括對現代CSS3JavaScriptWeb 字體的全面支援。

IronPDF 功能比較展示了三大關鍵優勢:像素級完美渲染、5 分鐘快速設定以及跨平台相容性,並附有各功能的詳細資訊。

如何建立你的第一個PDF文件?

讓我們分別使用這兩個庫來建立 PDF 文件,以了解它們的基本方法。 這些程式碼範例示範了 PDF 生成的基本邏輯,展示了每個庫 API 設計背後的不同理念。

Aspose PDF 如何建立文件?

using Aspose.Pdf;
using Aspose.Pdf.Text;
// Create new instance of Document class
var document = new Document();
// Add pages to the document object
var page = document.Pages.Add();
// Create new TextFragment with Hello World text
var textFragment = new TextFragment("Hello World!");
textFragment.TextState.FontSize = 24;
// Add text to paragraphs collection
page.Paragraphs.Add(textFragment);
// Save the generated PDF document
document.Save("output.pdf");
using Aspose.Pdf;
using Aspose.Pdf.Text;
// Create new instance of Document class
var document = new Document();
// Add pages to the document object
var page = document.Pages.Add();
// Create new TextFragment with Hello World text
var textFragment = new TextFragment("Hello World!");
textFragment.TextState.FontSize = 24;
// Add text to paragraphs collection
page.Paragraphs.Add(textFragment);
// Save the generated PDF document
document.Save("output.pdf");
Imports Aspose.Pdf
Imports Aspose.Pdf.Text

' Create new instance of Document class
Dim document As New Document()
' Add pages to the document object
Dim page As Page = document.Pages.Add()
' Create new TextFragment with Hello World text
Dim textFragment As New TextFragment("Hello World!")
textFragment.TextState.FontSize = 24
' Add text to paragraphs collection
page.Paragraphs.Add(textFragment)
' Save the generated PDF document
document.Save("output.pdf")
$vbLabelText   $csharpLabel

這段程式碼透過建立文件物件模型來建立 PDF 文件。 您建立一個新文檔,向集合中新增頁面,然後向這些頁面新增內容。 Document類別提供基礎,而段落則容納您的內容。 這個"Hello World"範例示範了基本流程。 此方法需要了解 Aspose 的物件層次結構並明確管理字體

Aspose PDF 輸出是什麼樣的?

! PDF 檢視器正在顯示一個使用 Aspose.PDF 建立的簡單"Hello World!"文檔,頂部顯示評估浮水印。

IronPDF是如何建立文件的?

using IronPdf;
// Create new instance of ChromePdfRenderer
var renderer = new ChromePdfRenderer();
// Convert HTML string to PDF file
var html = "<h1>Hello World!</h1>";
var pdf = renderer.RenderHtmlAsPdf(html);
// Save PDF files using SaveAs method
pdf.SaveAs("output.pdf");
using IronPdf;
// Create new instance of ChromePdfRenderer
var renderer = new ChromePdfRenderer();
// Convert HTML string to PDF file
var html = "<h1>Hello World!</h1>";
var pdf = renderer.RenderHtmlAsPdf(html);
// Save PDF files using SaveAs method
pdf.SaveAs("output.pdf");
Imports IronPdf

' Create new instance of ChromePdfRenderer
Dim renderer As New ChromePdfRenderer()

' Convert HTML string to PDF file
Dim html As String = "<h1>Hello World!</h1>"
Dim pdf = renderer.RenderHtmlAsPdf(html)

' Save PDF files using SaveAs method
pdf.SaveAs("output.pdf")
$vbLabelText   $csharpLabel

IronPDF採用了不同的方法-它使用Chrome瀏覽器直接將HTML渲染成PDF格式。 此 API 可讓您輕鬆轉換 Web 內容並實作複雜的佈局。 該庫會幫你處理複雜性,使你更容易獲得專業成果。 您也可以從檔案URL甚至Razor 視圖進行渲染。

IronPDF 的輸出結果是什麼樣的呢?

PDF 檢視器正在顯示一個簡單的"Hello World!"文檔,頁面上有 Iron Software 的浮水印,呈對角線排列。

如何建立實際使用的發票 PDF 文件?

以下是使用這兩個庫建立 PDF 文件的完整程式碼,可用於實際的發票解決方案。 在商業應用中,產生發票是 PDF 庫最常見的用途之一。

如何使用 Aspose PDF 建立發票?

using Aspose.Pdf;
using Aspose.Pdf.Text;
// Create new Document instance
var document = new Document();
var page = document.Pages.Add();
// Add title text
var title = new TextFragment("INVOICE");
title.TextState.FontSize = 28;
title.HorizontalAlignment = HorizontalAlignment.Center;
// Add to paragraphs
page.Paragraphs.Add(title);
// Create table object for invoice items
var table = new Table();
table.ColumnWidths = "200 100 100";
// Add header row to table
var headerRow = table.Rows.Add();
headerRow.Cells.Add("Description");
headerRow.Cells.Add("Quantity");
headerRow.Cells.Add("Price");
// Add data rows
var dataRow = table.Rows.Add();
dataRow.Cells.Add("Product A");
dataRow.Cells.Add("2");
dataRow.Cells.Add("$50.00");
// Add table to page paragraphs
page.Paragraphs.Add(table);
// Save the PDF document
document.Save("invoice.pdf");
using Aspose.Pdf;
using Aspose.Pdf.Text;
// Create new Document instance
var document = new Document();
var page = document.Pages.Add();
// Add title text
var title = new TextFragment("INVOICE");
title.TextState.FontSize = 28;
title.HorizontalAlignment = HorizontalAlignment.Center;
// Add to paragraphs
page.Paragraphs.Add(title);
// Create table object for invoice items
var table = new Table();
table.ColumnWidths = "200 100 100";
// Add header row to table
var headerRow = table.Rows.Add();
headerRow.Cells.Add("Description");
headerRow.Cells.Add("Quantity");
headerRow.Cells.Add("Price");
// Add data rows
var dataRow = table.Rows.Add();
dataRow.Cells.Add("Product A");
dataRow.Cells.Add("2");
dataRow.Cells.Add("$50.00");
// Add table to page paragraphs
page.Paragraphs.Add(table);
// Save the PDF document
document.Save("invoice.pdf");
Imports Aspose.Pdf
Imports Aspose.Pdf.Text

' Create new Document instance
Dim document As New Document()
Dim page = document.Pages.Add()

' Add title text
Dim title As New TextFragment("INVOICE")
title.TextState.FontSize = 28
title.HorizontalAlignment = HorizontalAlignment.Center

' Add to paragraphs
page.Paragraphs.Add(title)

' Create table object for invoice items
Dim table As New Table()
table.ColumnWidths = "200 100 100"

' Add header row to table
Dim headerRow = table.Rows.Add()
headerRow.Cells.Add("Description")
headerRow.Cells.Add("Quantity")
headerRow.Cells.Add("Price")

' Add data rows
Dim dataRow = table.Rows.Add()
dataRow.Cells.Add("Product A")
dataRow.Cells.Add("2")
dataRow.Cells.Add("$50.00")

' Add table to page paragraphs
page.Paragraphs.Add(table)

' Save the PDF document
document.Save("invoice.pdf")
$vbLabelText   $csharpLabel

Aspose PDF .NET API 要求以程式設計方式建構每個元素。 您建立文檔對象,新增頁面,然後在段落集合中新增內容。 這種方法在需要精確控制時具有明顯的優勢,但需要編寫更多程式碼才能實現複雜的佈局。 對於新增頁首、頁尾自訂邊距等更進階的功能,需要進行額外的配置。

如何使用 IronPDF 建立發票?

using IronPdf;
var renderer = new ChromePdfRenderer();
// Configure PDF output settings
renderer.RenderingOptions.MarginTop = 25;
renderer.RenderingOptions.MarginBottom = 25;
// HTML string with invoice content
var html = @"
<html>
<head>
    <style>
        table { width: 100%; }
        th, td { padding: 8px; }
    </style>
</head>
<body>
    <h1>INVOICE</h1>
    <table>
        <tr>
            <th>Description</th>
            <th>Quantity</th>
            <th>Price</th>
        </tr>
        <tr>
            <td>Product A</td>
            <td>2</td>
            <td>$50.00</td>
        </tr>
    </table>
</body>
</html>";
// Generate PDF from HTML
var pdf = renderer.RenderHtmlAsPdf(html);
pdf.SaveAs("invoice.pdf");
using IronPdf;
var renderer = new ChromePdfRenderer();
// Configure PDF output settings
renderer.RenderingOptions.MarginTop = 25;
renderer.RenderingOptions.MarginBottom = 25;
// HTML string with invoice content
var html = @"
<html>
<head>
    <style>
        table { width: 100%; }
        th, td { padding: 8px; }
    </style>
</head>
<body>
    <h1>INVOICE</h1>
    <table>
        <tr>
            <th>Description</th>
            <th>Quantity</th>
            <th>Price</th>
        </tr>
        <tr>
            <td>Product A</td>
            <td>2</td>
            <td>$50.00</td>
        </tr>
    </table>
</body>
</html>";
// Generate PDF from HTML
var pdf = renderer.RenderHtmlAsPdf(html);
pdf.SaveAs("invoice.pdf");
Imports IronPdf

Dim renderer As New ChromePdfRenderer()
' Configure PDF output settings
renderer.RenderingOptions.MarginTop = 25
renderer.RenderingOptions.MarginBottom = 25
' HTML string with invoice content
Dim html As String = "
<html>
<head>
    <style>
        table { width: 100%; }
        th, td { padding: 8px; }
    </style>
</head>
<body>
    <h1>INVOICE</h1>
    <table>
        <tr>
            <th>Description</th>
            <th>Quantity</th>
            <th>Price</th>
        </tr>
        <tr>
            <td>Product A</td>
            <td>2</td>
            <td>$50.00</td>
        </tr>
    </table>
</body>
</html>"
' Generate PDF from HTML
Dim pdf = renderer.RenderHtmlAsPdf(html)
pdf.SaveAs("invoice.pdf")
$vbLabelText   $csharpLabel

使用 IronPDF,您只需編寫標準 HTML,程式就會自動處理渲染。 這種方法可以更輕鬆地建立具有專業佈局的 PDF 檔案。 您的應用程式可以透過引用外部樣式表、新增圖像和包含連結來立即使用此功能。 渲染選項可對輸出進行精細控制,包括自訂紙張尺寸頁面方向列印 CSS

發票輸出格式是什麼樣的?

是一個透過程式自動產生的基本 PDF 發票範例,以表格形式顯示產品訊息,並帶有可見的水印疊加層。

有哪些進階功能可用?

這兩個庫都提供了除基本PDF創建之外的廣泛功能。 了解這些高級功能有助於您確定哪個庫最符合您的特定需求。

如何將網頁轉換為PDF?

using IronPdf;
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderUrlAsPdf("___PROTECTED_URL_91___");
pdf.SaveAs("website.pdf");
using IronPdf;
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderUrlAsPdf("___PROTECTED_URL_91___");
pdf.SaveAs("website.pdf");
Imports IronPdf

Dim renderer As New ChromePdfRenderer()
Dim pdf = renderer.RenderUrlAsPdf("___PROTECTED_URL_91___")
pdf.SaveAs("website.pdf")
$vbLabelText   $csharpLabel

IronPDF 擅長URL 轉 PDF ,能夠處理具有JavaScriptcookie身份驗證的複雜網站。 Chrome 引擎可確保現代 Web 應用程式(包括Angular和 React 網站)的精確渲染。

如何為PDF檔案新增安全保護?

using IronPdf;
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf(html);
// Implement security settings
pdf.SecuritySettings.UserPassword = "user123";
pdf.SecuritySettings.AllowUserPrinting = IronPdf.Security.PdfPrintSecurity.FullPrintRights;
// Save secured file
pdf.SaveAs("secured.pdf");
using IronPdf;
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf(html);
// Implement security settings
pdf.SecuritySettings.UserPassword = "user123";
pdf.SecuritySettings.AllowUserPrinting = IronPdf.Security.PdfPrintSecurity.FullPrintRights;
// Save secured file
pdf.SaveAs("secured.pdf");
Imports IronPdf

Dim renderer As New ChromePdfRenderer()
Dim pdf = renderer.RenderHtmlAsPdf(html)
' Implement security settings
pdf.SecuritySettings.UserPassword = "user123"
pdf.SecuritySettings.AllowUserPrinting = IronPdf.Security.PdfPrintSecurity.FullPrintRights
' Save secured file
pdf.SaveAs("secured.pdf")
$vbLabelText   $csharpLabel

IronPDF 提供直覺的方法,可為 PDF 文件添加安全功能頁首頁尾和其他功能。 您也可以刪除頁面合併文件提取內容。 進階安全功能包括數位簽章加密元資料管理

安全 PDF 檔案是什麼樣的?

用於保護 PDF 檔案的密碼保護對話框,顯示密碼輸入欄位和提交按鈕

其他進階功能

IronPDF 支援多種進階應用場景,包括:

*符合 PDF/A歸檔要求

你該選擇哪家圖書館?

何時應該使用 IronPDF?

IronPDF 在以下情況下表現優異:

需要將HTML轉換為PDF

功能比較表展示了PDF的四大功能類別:建立PDF、轉換PDF、編輯PDF以及簽名和保護PDF,每個類別下均附有詳細的功能清單。

何時應該使用 Aspose PDF?

Aspose PDF for .NET 應用程式在以下情況下能發揮良好作用:

  • 透過程式設計從頭開始建立 PDF 文件
  • 需要對文檔模型進行細粒度控制
  • 處理複雜的PDF文件
  • 匯入現有PDF文件進行處理
  • 要求符合特定 PDF 格式要求
  • 建立以文件為中心的應用程式

性能考量

IronPDF 的 Chrome 引擎在 HTML 渲染方面表現出色,而 Aspose PDF 在純程式化 PDF 產生方面可能表現得更好。 對於非同步操作,這兩個庫都提供了完整的支援。 對於大規模部署,請考慮記憶體使用情況渲染逾時問題

許可證有何區別?

IronPDF 提供簡單易用的許可模式,起價為$799 ,包含支援和更新。 免費試用版包含所有功能,且無浮水印,可用於開發和測試。 許可證部署簡單,提供多種配置選項。

IronPDF 的許可頁面顯示了四個價格等級(Lite、Plus、Professional 和 Unlimited),每個等級都有相應的折扣價格和功能

Aspose PDF 的起價為 1199 美元,支援服務另需付費。 這兩個庫都提供評估版本用於測試。 IronPDF 提供更靈活的許可選項,包括基於專案和 SaaS 的許可模式。

結論

這兩個函式庫都能用 C# 建立 PDF 文件。 Aspose PDF 透過其文件物件模型和TextFragment類別提供精細的控制,而 IronPDF 則利用熟悉的 Web 技術在 HTML 到 PDF 的轉換方面表現出色。

對於大多數現代 .NET 應用程式而言,IronPDF 憑藉其直覺的 API、卓越的 HTML 渲染、內建支援以及使用簡單程式碼建立 PDF 文件的功能,提供了更高的價值。 無論您需要載入網頁、新增圖片或實現複雜的佈局,IronPDF 基於 Chrome 的功能都能簡化這個過程。 該庫功能豐富,涵蓋了從基本的PDF 創建到高級簽名和安全性等各個方面。

IronPDF 還具備繪圖功能,可以重現複雜的設計。 如有疑問,請聯絡他們的工程團隊或查閱他們的文件以解決問題。 該程式庫支援各種部署場景,包括Azure FunctionsAWS LambdaBlazor 應用程式

首先使用 IronPDF 的免費試用版,評估它是否能滿足您的 PDF 產生需求。 在您的 .NET 解決方案中,使用所有功能來建立、轉換和操作 PDF 檔案。

常見問題解答

使用 Aspose C# 和 IronPDF 創建 PDF 的主要目的是什麼?

使用 Aspose C# 和 IronPDF 的主要目的是為現代 .NET 應用程式程式化地建立 PDF 檔案,例如產生發票、報告或將網頁內容轉換為 PDF 格式。

IronPDF 如何增強 .NET 應用程式中的 PDF 創作?

IronPDF 為 .NET 應用程式增強了 PDF 的建立,它提供了全面的工具和程式碼範例,簡化了流程,使開發人員更容易產生和處理 PDF。

我可以使用 IronPDF 將網頁內容轉換成 PDF 格式嗎?

是的,IronPDF 可讓您將網頁內容無縫轉換為 PDF 格式,非常適合從 HTML 來源建立精確且外觀專業的文件。

使用 IronPDF 生成 PDF 的典型用例有哪些?

使用 IronPDF 生成 PDF 的典型用例包括创建发票、生成报告以及将网页或 HTML 内容转换为 PDF 文档。

IronPdf 是否為開發人員提供完整的程式碼範例?

是的,IronPDF 提供完整的程式碼範例,協助開發人員有效率地使用函式庫來建立和管理 PDF 檔案。

是否可以將 IronPDF 與其他 .NET 函式庫整合以增強功能?

是的,IronPDF 可以與 Aspose C# 等其他 .NET 函式庫整合,以增強 PDF 創建和處理的功能和能力。

與其他 PDF 函式庫相比,使用 IronPDF 有何優勢?

使用 IronPdf 的優點包括易於使用、文件詳盡,以及提供完整的程式碼範例,這些優點使其成為開發人員的多用途選擇。

IronPDF 能否處理複雜的 PDF 生成任務,例如添加水印或標頭?

是的,IronPDF 可以處理複雜的 PDF 生成任務,包括為文件添加水印、頁首和頁尾,提供文件自訂的靈活性。

IronPDF 是否適合 .NET 開發的初學者?

IronPdf 既適合初學者,也適合有經驗的開發人員,因為它提供了人性化的功能和詳細的說明文件,可以引導使用者完成 PDF 的製作過程。

IronPDF 如何確保生成 PDF 文件的品質?

IronPDF 透過提供強大的工具來精確控制版面,並支援廣泛的 PDF 功能和標準,以確保高品質的 PDF 文件。

Curtis Chau
技術撰稿人

Curtis Chau 擁有電腦科學學士學位(卡爾頓大學),專長於前端開發,精通 Node.js、TypeScript、JavaScript 和 React。Curtis 對製作直覺且美觀的使用者介面充滿熱情,他喜歡使用現代化的架構,並製作結構良好且視覺上吸引人的手冊。

除了開發之外,Curtis 對物聯網 (IoT) 也有濃厚的興趣,他喜歡探索整合硬體與軟體的創新方式。在空閒時間,他喜歡玩遊戲和建立 Discord bots,將他對技術的熱愛與創意結合。