產品比較

IronPDF 與 PDFSharpCore 的比較

發佈 2024年3月6日
分享:

在軟體開發中,創建和管理PDF是一個常見的需求。開發者通常需要可以輕鬆生成、編輯和操作PDF的函式庫,這些函式庫可以作為NuGet套件使用。 IronPDFPDFSharpCore 在 .NET 語言生態系統中有兩個著名的庫可以滿足此目的。這篇針對 Visual Studio 使用者的文章深入探討了這兩個庫,重點介紹了它們的特性、差異以及它們在 .NET 項目中的應用方式。

IronPDF 和 PDFSharpCore 介紹

IronPDF 是一個綜合的 .NET 函式庫,專為開發人員設計,可輕鬆建立、編輯和轉換 PDF 文件。它提供了廣泛的功能來創建、編輯和轉換這些文檔。IronPDF 支援 .NET Core 和框架,使其適用於各種應用,包括網頁和桌面應用。

PDFSharpCore 函式庫是原始 PDFsharp 函式庫的部分移植版本。它針對 .NET Core,另外還有 MigraDoc 基礎,專注於創建和處理 PDF 文檔而不依賴於 Windows 函式庫。這使其適合跨平台專案,能在 Linux、MacOS 和 Windows 上運行。

安裝 IronPDF 和 PDFSharpCore

安裝 IronPDF

要在專案中開始使用 IronPDF,您可以透過 NuGet Package Manager 輕鬆安裝它。按照以下步驟安裝 IronPDF:

  1. 在 Visual Studio 中開啟您的專案。
  2. 導覽到 工具 > NuGet 套件管理員 > 管理解決方案的 NuGet 套件
  3. 在 NuGet 管理員中搜尋 IronPdf
  4. 選擇您的專案,然後點擊 安裝 將 IronPDF 添加到您的專案中。

IronPDF 與 PDFSharpCore 的比較:圖 1 - IronPDF

或者,您可以使用封裝管理員主控台透過以下命令來安裝IronPDF:

Install-Package IronPdf

安裝 PDFSharpCore

要使用 NuGet 安裝 PDFSharpCore,請按以下說明操作:

  1. 確保您已打開 Visual Studio 專案。

  2. 前往 工具 > NuGet 套件管理員 > 管理解決方案的 NuGet 套件

  3. 在 NuGet 套件管理員中,搜索 PDFSharpCore

  4. 選擇您的專案並點選 安裝 以整合 PDFSharpCore。

IronPDF 和 PDFSharpCore 的比較:圖 2 - PDFSharpCore

對於喜歡使用 Package Manager Console 的開發人員,可以使用此命令安裝 PDFSharpCore:

Install-Package PdfSharpCore

建立 PDF 文件:IronPDF 與 PDFSharpCore

IronPDF: 簡單創建和操作

IronPDF 簡化了為開發人員生成新 PDF 文件的過程。它提供了一種直觀的方式,可以直接從 HTML 內容或網頁創建 PDF,從而使 Web 內容轉換為可攜式文檔格式文件變得更加簡單。

HTML String to PDF

IronPDF allows the 轉換 HTML 字串為 PDF 從 HTML 字符串創建 PDF 文件 使用其 ChromePdfRenderer 類別。 當您需要從 HTML 模版或應用程序中生成的內容動態生成 PDF 時,此功能特別有用。以下是使用 IronPDF 將 HTML 字符串轉換為 PDF 文件的方法:

using IronPdf;
class Program
{
    static void Main(string [] args)
    {
        License.LicenseKey = "License-Key";
        // Create a new instance of IronPdf.ChromePdfRenderer
        var Renderer = new ChromePdfRenderer();
        // HTML content with meaningful content
        string htmlContent = @"
                <h1>Report on Sales Performance</h1>
                <p>This report analyzes the sales performance for the first quarter of 2024.</p>
                <table>
                    <thead>
                        <tr>
                            <th>Month</th>
                            <th>Sales Revenue</th>
                        </tr>
                    </thead>
                    <tbody>
                        <tr>
                            <td>January</td>
                            <td>$50,000</td>
                        </tr>
                        <tr>
                            <td>February</td>
                            <td>$55,000</td>
                        </tr>
                        <tr>
                            <td>March</td>
                            <td>$60,000</td>
                        </tr>
                    </tbody>
                </table>
                <p>This report highlights the positive growth in sales revenue over the quarter.</p>";
        // Render HTML content as PDF
        var PDF = Renderer.RenderHtmlAsPdf(htmlContent);
        // Save the PDF as example.pdf
        PDF.SaveAs("example.pdf");
        Console.WriteLine("PDF saved successfully.");
    }
}
using IronPdf;
class Program
{
    static void Main(string [] args)
    {
        License.LicenseKey = "License-Key";
        // Create a new instance of IronPdf.ChromePdfRenderer
        var Renderer = new ChromePdfRenderer();
        // HTML content with meaningful content
        string htmlContent = @"
                <h1>Report on Sales Performance</h1>
                <p>This report analyzes the sales performance for the first quarter of 2024.</p>
                <table>
                    <thead>
                        <tr>
                            <th>Month</th>
                            <th>Sales Revenue</th>
                        </tr>
                    </thead>
                    <tbody>
                        <tr>
                            <td>January</td>
                            <td>$50,000</td>
                        </tr>
                        <tr>
                            <td>February</td>
                            <td>$55,000</td>
                        </tr>
                        <tr>
                            <td>March</td>
                            <td>$60,000</td>
                        </tr>
                    </tbody>
                </table>
                <p>This report highlights the positive growth in sales revenue over the quarter.</p>";
        // Render HTML content as PDF
        var PDF = Renderer.RenderHtmlAsPdf(htmlContent);
        // Save the PDF as example.pdf
        PDF.SaveAs("example.pdf");
        Console.WriteLine("PDF saved successfully.");
    }
}
Imports IronPdf
Friend Class Program
	Shared Sub Main(ByVal args() As String)
		License.LicenseKey = "License-Key"
		' Create a new instance of IronPdf.ChromePdfRenderer
		Dim Renderer = New ChromePdfRenderer()
		' HTML content with meaningful content
		Dim htmlContent As String = "
                <h1>Report on Sales Performance</h1>
                <p>This report analyzes the sales performance for the first quarter of 2024.</p>
                <table>
                    <thead>
                        <tr>
                            <th>Month</th>
                            <th>Sales Revenue</th>
                        </tr>
                    </thead>
                    <tbody>
                        <tr>
                            <td>January</td>
                            <td>$50,000</td>
                        </tr>
                        <tr>
                            <td>February</td>
                            <td>$55,000</td>
                        </tr>
                        <tr>
                            <td>March</td>
                            <td>$60,000</td>
                        </tr>
                    </tbody>
                </table>
                <p>This report highlights the positive growth in sales revenue over the quarter.</p>"
		' Render HTML content as PDF
		Dim PDF = Renderer.RenderHtmlAsPdf(htmlContent)
		' Save the PDF as example.pdf
		PDF.SaveAs("example.pdf")
		Console.WriteLine("PDF saved successfully.")
	End Sub
End Class
VB   C#

IronPDF 與 PDFSharpCore 的比較:圖 3 - PDF 報告發送輸出

HTML File to PDF

IronPDF還支持將整個HTML文件轉換為PDF文件。這對於將作為文件儲存的靜態HTML頁面或範本轉換為PDF格式特別有用。以下是一個將HTML文件轉換為PDF文件的代碼示例:

using IronPdf;
class Program
{
    void Main(string [] args)
    {
        License.LicenseKey = "License-Key";
        // Create a new instance of IronPdf.ChromePdfRenderer
        var Renderer = new ChromePdfRenderer();
        // Render HTML content as PDF
        var PDF = Renderer.RenderHtmlFileAsPdf(@"C:\Users\Tayyab Ali\Desktop\example.html");
        PDF.SaveAs("example.pdf");
        Console.WriteLine("PDF saved successfully.");
    }
}
using IronPdf;
class Program
{
    void Main(string [] args)
    {
        License.LicenseKey = "License-Key";
        // Create a new instance of IronPdf.ChromePdfRenderer
        var Renderer = new ChromePdfRenderer();
        // Render HTML content as PDF
        var PDF = Renderer.RenderHtmlFileAsPdf(@"C:\Users\Tayyab Ali\Desktop\example.html");
        PDF.SaveAs("example.pdf");
        Console.WriteLine("PDF saved successfully.");
    }
}
Imports IronPdf
Friend Class Program
	Private Sub Main(ByVal args() As String)
		License.LicenseKey = "License-Key"
		' Create a new instance of IronPdf.ChromePdfRenderer
		Dim Renderer = New ChromePdfRenderer()
		' Render HTML content as PDF
		Dim PDF = Renderer.RenderHtmlFileAsPdf("C:\Users\Tayyab Ali\Desktop\example.html")
		PDF.SaveAs("example.pdf")
		Console.WriteLine("PDF saved successfully.")
	End Sub
End Class
VB   C#

IronPDF 與 PDFSharpCore 的比較:圖 4 - PDF 輸出

URL 轉換為 PDF

將網頁轉換為 PDF 是 IronPDF 的另一個強大功能。此功能對於直接將即時網頁內容(包括樣式和媒體)捕捉到 PDF 文件中是非常寶貴的。要將網頁 URL 轉換為 PDF 文件,可以使用以下代碼:

using IronPdf;
class Program
{
    static void Main(string [] args)
    {
        License.LicenseKey = "License-Key";
        // Create a new instance of IronPdf.ChromePdfRenderer
        var Renderer = new ChromePdfRenderer();
        Renderer.RenderingOptions.PaperSize = IronPdf.Rendering.PdfPaperSize.A2;
        // Render HTML content as PDF
        var PDF = Renderer.RenderUrlAsPdf("https://dotnet.microsoft.com/en-us/download/dotnet-framework");
        // Save the PDF as example.pdf
        PDF.SaveAs("webpage.pdf");
        Console.WriteLine("PDF saved successfully.");
    }
}
using IronPdf;
class Program
{
    static void Main(string [] args)
    {
        License.LicenseKey = "License-Key";
        // Create a new instance of IronPdf.ChromePdfRenderer
        var Renderer = new ChromePdfRenderer();
        Renderer.RenderingOptions.PaperSize = IronPdf.Rendering.PdfPaperSize.A2;
        // Render HTML content as PDF
        var PDF = Renderer.RenderUrlAsPdf("https://dotnet.microsoft.com/en-us/download/dotnet-framework");
        // Save the PDF as example.pdf
        PDF.SaveAs("webpage.pdf");
        Console.WriteLine("PDF saved successfully.");
    }
}
Imports IronPdf
Friend Class Program
	Shared Sub Main(ByVal args() As String)
		License.LicenseKey = "License-Key"
		' Create a new instance of IronPdf.ChromePdfRenderer
		Dim Renderer = New ChromePdfRenderer()
		Renderer.RenderingOptions.PaperSize = IronPdf.Rendering.PdfPaperSize.A2
		' Render HTML content as PDF
		Dim PDF = Renderer.RenderUrlAsPdf("https://dotnet.microsoft.com/en-us/download/dotnet-framework")
		' Save the PDF as example.pdf
		PDF.SaveAs("webpage.pdf")
		Console.WriteLine("PDF saved successfully.")
	End Sub
End Class
VB   C#

IronPDF 與 PDFSharpCore 的比較:圖 5 - URL 轉 PDF 輸出

PDFSharpCore: 結合靈活性與控制力

PDFSharpCore 是 PDFsharp for .NET Core 的部分移植版,提供了詳細的控制來創建 PDF 文件。它不直接將 HTML 轉換為 PDF,但提供了廣泛的功能以從零開始生成新文檔或修改現有的 PDF 文件。以下是使用 PDFSharpCore 的基本範例:

var doc = new PdfDocument();
var page = doc.AddPage();
var graphics = XGraphics.FromPdfPage(page);
var font = new XFont("Verdana", 20, XFontStyle.Bold);
graphics.DrawString("Hello, World!", font, XBrushes.Black, new XRect(0, 0, page.Width, page.Height), XStringFormats.Center);
doc.Save("newdocument.pdf");
var doc = new PdfDocument();
var page = doc.AddPage();
var graphics = XGraphics.FromPdfPage(page);
var font = new XFont("Verdana", 20, XFontStyle.Bold);
graphics.DrawString("Hello, World!", font, XBrushes.Black, new XRect(0, 0, page.Width, page.Height), XStringFormats.Center);
doc.Save("newdocument.pdf");
Dim doc = New PdfDocument()
Dim page = doc.AddPage()
Dim graphics = XGraphics.FromPdfPage(page)
Dim font = New XFont("Verdana", 20, XFontStyle.Bold)
graphics.DrawString("Hello, World!", font, XBrushes.Black, New XRect(0, 0, page.Width, page.Height), XStringFormats.Center)
doc.Save("newdocument.pdf")
VB   C#

IronPDF 和 PDFSharpCore 的比較:圖 6 - PDFSharpCore 輸出結果

處理複雜的PDF任務:高級功能

IronPDF 高級功能

IronPDF 在處理高級 PDF 任務時脫穎而出。它提供以下功能:

PDF/A 合規:IronPDF 能夠生成 符合PDF/A的文件 對於需要長期數字保存的企業來說,這是必不可少的功能。該功能確保 PDF 文件以符合嚴格歸檔標準的方式生成,從而在時間推移中保持文件的完整性。

using IronPdf;
// Open a PDF 
PdfDocument pdf = PdfDocument.FromFile("example.pdf");
// Save the PDF/A-3b
pdf.SaveAsPdfA("PDFA-Document.pdf", PdfAVersions.PdfA3);
using IronPdf;
// Open a PDF 
PdfDocument pdf = PdfDocument.FromFile("example.pdf");
// Save the PDF/A-3b
pdf.SaveAsPdfA("PDFA-Document.pdf", PdfAVersions.PdfA3);
Imports IronPdf
' Open a PDF 
Private pdf As PdfDocument = PdfDocument.FromFile("example.pdf")
' Save the PDF/A-3b
pdf.SaveAsPdfA("PDFA-Document.pdf", PdfAVersions.PdfA3)
VB   C#

浮水印和安全性:IronPDF 提供穩健的工具來 添加浮水印 轉換為 PDF 文件,這對於品牌和版權保護至關重要。此外,它支持全面的安全功能,包括加密 PDF 文件、設置用户權限和添加數字簽名的能力。這確保了敏感信息的安全性並保持文件的完整性。

using IronPdf;
class Program
{
    static void Main(string [] args)
    {
        var renderer = new ChromePdfRenderer();
        var pdf = renderer.RenderHtmlAsPdf("<html><body><h1>Hello, IronPdf!</h1></body></html>");
        pdf.ApplyWatermark("<h2 style='color:red'>SAMPLE WATERMARK</h2>", 30, IronPdf.Editing.VerticalAlignment.Middle, IronPdf.Editing.HorizontalAlignment.Center);
        pdf.SecuritySettings.OwnerPassword = "top-secret"; // password to edit the pdf
        pdf.SecuritySettings.UserPassword = "sharable"; // password to open the pdf
        pdf.SaveAs("CombinedPDF.pdf");
        Console.WriteLine("PDF generated successfully!");
    }
}
using IronPdf;
class Program
{
    static void Main(string [] args)
    {
        var renderer = new ChromePdfRenderer();
        var pdf = renderer.RenderHtmlAsPdf("<html><body><h1>Hello, IronPdf!</h1></body></html>");
        pdf.ApplyWatermark("<h2 style='color:red'>SAMPLE WATERMARK</h2>", 30, IronPdf.Editing.VerticalAlignment.Middle, IronPdf.Editing.HorizontalAlignment.Center);
        pdf.SecuritySettings.OwnerPassword = "top-secret"; // password to edit the pdf
        pdf.SecuritySettings.UserPassword = "sharable"; // password to open the pdf
        pdf.SaveAs("CombinedPDF.pdf");
        Console.WriteLine("PDF generated successfully!");
    }
}
Imports IronPdf
Friend Class Program
	Shared Sub Main(ByVal args() As String)
		Dim renderer = New ChromePdfRenderer()
		Dim pdf = renderer.RenderHtmlAsPdf("<html><body><h1>Hello, IronPdf!</h1></body></html>")
		pdf.ApplyWatermark("<h2 style='color:red'>SAMPLE WATERMARK</h2>", 30, IronPdf.Editing.VerticalAlignment.Middle, IronPdf.Editing.HorizontalAlignment.Center)
		pdf.SecuritySettings.OwnerPassword = "top-secret" ' password to edit the pdf
		pdf.SecuritySettings.UserPassword = "sharable" ' password to open the pdf
		pdf.SaveAs("CombinedPDF.pdf")
		Console.WriteLine("PDF generated successfully!")
	End Sub
End Class
VB   C#

IronPDF 與 PDFSharpCore 的比較:圖7 - 受密碼保護的 PDF 輸出

編輯和合併 PDF:IronPDF 不僅僅是創建 PDF,也提供在現有 PDF 檔案中編輯內容的功能。這些功能包括文字編輯、圖片處理和版面調整。此外,它的合併功能還可以允許將多個 PDF 文件合併成一個。 合併多個 PDF 文件 轉換為單個文件,簡化文件管理和分發。

using IronPdf;
class Program
{
    static void Main(string [] args)
    {
        const string html_a = @"<p> [PDF_A] </p>
            <p> [PDF_A] 1st Page </p>
            <div style='page-break-after: always;'></div>
            <p> [PDF_A] 2nd Page</p>";
        const string html_b = @"<p> [PDF_B] </p>
            <p> [PDF_B] 1st Page </p>
            <div style='page-break-after: always;'></div>
            <p> [PDF_B] 2nd Page</p>";
        const string html_c =
            @"<p> Hello Iron </p>
            <p> This is 1st Page </p>
            <div style='page-break-after: always;'></div>
            <p> This is 2nd Page</p>
            <div style='page-break-after: always;'></div>
            <p> This is 3rd Page</p>";
        var renderer = new ChromePdfRenderer();
        var pdfdoc_a = renderer.RenderHtmlAsPdf(html_a);
        var pdfdoc_b = renderer.RenderHtmlAsPdf(html_b);
        var merged = PdfDocument.Merge(pdfdoc_a, pdfdoc_b);
        var pdfdoc_c = renderer.RenderHtmlAsPdf(html_c);
        merged.AppendPdf(pdfdoc_c);
        merged.SaveAs("CombinedDocument.pdf");
        Console.WriteLine("PDF generated successfully!");
    }
}
using IronPdf;
class Program
{
    static void Main(string [] args)
    {
        const string html_a = @"<p> [PDF_A] </p>
            <p> [PDF_A] 1st Page </p>
            <div style='page-break-after: always;'></div>
            <p> [PDF_A] 2nd Page</p>";
        const string html_b = @"<p> [PDF_B] </p>
            <p> [PDF_B] 1st Page </p>
            <div style='page-break-after: always;'></div>
            <p> [PDF_B] 2nd Page</p>";
        const string html_c =
            @"<p> Hello Iron </p>
            <p> This is 1st Page </p>
            <div style='page-break-after: always;'></div>
            <p> This is 2nd Page</p>
            <div style='page-break-after: always;'></div>
            <p> This is 3rd Page</p>";
        var renderer = new ChromePdfRenderer();
        var pdfdoc_a = renderer.RenderHtmlAsPdf(html_a);
        var pdfdoc_b = renderer.RenderHtmlAsPdf(html_b);
        var merged = PdfDocument.Merge(pdfdoc_a, pdfdoc_b);
        var pdfdoc_c = renderer.RenderHtmlAsPdf(html_c);
        merged.AppendPdf(pdfdoc_c);
        merged.SaveAs("CombinedDocument.pdf");
        Console.WriteLine("PDF generated successfully!");
    }
}
Imports IronPdf
Friend Class Program
	Shared Sub Main(ByVal args() As String)
		Const html_a As String = "<p> [PDF_A] </p>
            <p> [PDF_A] 1st Page </p>
            <div style='page-break-after: always;'></div>
            <p> [PDF_A] 2nd Page</p>"
		Const html_b As String = "<p> [PDF_B] </p>
            <p> [PDF_B] 1st Page </p>
            <div style='page-break-after: always;'></div>
            <p> [PDF_B] 2nd Page</p>"
		Const html_c As String = "<p> Hello Iron </p>
            <p> This is 1st Page </p>
            <div style='page-break-after: always;'></div>
            <p> This is 2nd Page</p>
            <div style='page-break-after: always;'></div>
            <p> This is 3rd Page</p>"
		Dim renderer = New ChromePdfRenderer()
		Dim pdfdoc_a = renderer.RenderHtmlAsPdf(html_a)
		Dim pdfdoc_b = renderer.RenderHtmlAsPdf(html_b)
		Dim merged = PdfDocument.Merge(pdfdoc_a, pdfdoc_b)
		Dim pdfdoc_c = renderer.RenderHtmlAsPdf(html_c)
		merged.AppendPdf(pdfdoc_c)
		merged.SaveAs("CombinedDocument.pdf")
		Console.WriteLine("PDF generated successfully!")
	End Sub
End Class
VB   C#

IronPDF和PDFSharpCore的比較:圖8 - 編輯PDF輸出

PDFSharpCore 進階功能

PDFSharpCore 雖然主要著重於基本功能,仍提供執行複雜任務的能力,例如:

文件修改: PDFSharpCore 便於修改現有的 PDF 文件。這包括添加或刪除頁面、更新文本和插入圖片等任務。

using PdfSharpCore.Pdf;
using PdfSharpCore.Pdf.IO;
// Open an existing PDF document
var inputDocument = PdfReader.Open("input.pdf", PdfDocumentOpenMode.Modify);
// Modify the first page
var page = inputDocument.Pages [0];
var graphics = XGraphics.FromPdfPage(page);
var font = new XFont("OpenSans", 20, XFontStyle.Bold);
graphics.DrawString("Added Text", font, XBrushes.Black, new XPoint(50, 100));
// Save the modified document
inputDocument.Save("modified.pdf");
using PdfSharpCore.Pdf;
using PdfSharpCore.Pdf.IO;
// Open an existing PDF document
var inputDocument = PdfReader.Open("input.pdf", PdfDocumentOpenMode.Modify);
// Modify the first page
var page = inputDocument.Pages [0];
var graphics = XGraphics.FromPdfPage(page);
var font = new XFont("OpenSans", 20, XFontStyle.Bold);
graphics.DrawString("Added Text", font, XBrushes.Black, new XPoint(50, 100));
// Save the modified document
inputDocument.Save("modified.pdf");
Imports PdfSharpCore.Pdf
Imports PdfSharpCore.Pdf.IO
' Open an existing PDF document
Private inputDocument = PdfReader.Open("input.pdf", PdfDocumentOpenMode.Modify)
' Modify the first page
Private page = inputDocument.Pages (0)
Private graphics = XGraphics.FromPdfPage(page)
Private font = New XFont("OpenSans", 20, XFontStyle.Bold)
graphics.DrawString("Added Text", font, XBrushes.Black, New XPoint(50, 100))
' Save the modified document
inputDocument.Save("modified.pdf")
VB   C#

圖形和繪圖:該庫使用與 PDFSharp 相同的繪圖例程,使開發人員能夠將複雜的圖形元素集成到 PDF 文件中。這包括繪製形狀、使用不同的字體以及應用顏色。

using PdfSharpCore.Drawing;
using PdfSharpCore.Pdf;
// Create a new PDF document
var document = new PdfDocument();
var page = document.AddPage();
var graphics = XGraphics.FromPdfPage(page);
// Draw a rectangle
graphics.DrawRectangle(XPens.Black, XBrushes.SkyBlue, 40, 100, 250, 120);
// Draw text
var font = new XFont("Verdana", 20, XFontStyle.BoldItalic);
graphics.DrawString("Hello, PDFSharpCore!", font, XBrushes.Black, new XRect(0, 0, page.Width, page.Height), XStringFormats.Center);
// Save the document
document.Save("drawing.pdf");
using PdfSharpCore.Drawing;
using PdfSharpCore.Pdf;
// Create a new PDF document
var document = new PdfDocument();
var page = document.AddPage();
var graphics = XGraphics.FromPdfPage(page);
// Draw a rectangle
graphics.DrawRectangle(XPens.Black, XBrushes.SkyBlue, 40, 100, 250, 120);
// Draw text
var font = new XFont("Verdana", 20, XFontStyle.BoldItalic);
graphics.DrawString("Hello, PDFSharpCore!", font, XBrushes.Black, new XRect(0, 0, page.Width, page.Height), XStringFormats.Center);
// Save the document
document.Save("drawing.pdf");
Imports PdfSharpCore.Drawing
Imports PdfSharpCore.Pdf
' Create a new PDF document
Private document = New PdfDocument()
Private page = document.AddPage()
Private graphics = XGraphics.FromPdfPage(page)
' Draw a rectangle
graphics.DrawRectangle(XPens.Black, XBrushes.SkyBlue, 40, 100, 250, 120)
' Draw text
Dim font = New XFont("Verdana", 20, XFontStyle.BoldItalic)
graphics.DrawString("Hello, PDFSharpCore!", font, XBrushes.Black, New XRect(0, 0, page.Width, page.Height), XStringFormats.Center)
' Save the document
document.Save("drawing.pdf")
VB   C#

IronPDF 與 PDFSharpCore 的比較:圖9 - 圖形輸出

從數據生成PDF:PDFSharpCore 在從應用程序數據動態創建PDF文檔方面表現出色。這對於生成報告、發票或任何需要包含動態數據的文檔特別有利。

using PdfSharpCore.Drawing;
using PdfSharpCore.Pdf;
// Create a new PDF document
var document = new PdfDocument();
var page = document.AddPage();
var graphics = XGraphics.FromPdfPage(page);
var font = new XFont("Arial", 12);
// Simulate generation
var data = new List<string> { "Data 1", "Data 2", "Data 3" };
// Generate PDF from data
var yPos = 20;
foreach (var item in data)
{
    graphics.DrawString(item, font, XBrushes.Black, new XRect(0, yPos, page.Width, page.Height), XStringFormats.TopLeft);
    yPos += 20;
}
// Save the document
document.Save("data-generated.pdf");
using PdfSharpCore.Drawing;
using PdfSharpCore.Pdf;
// Create a new PDF document
var document = new PdfDocument();
var page = document.AddPage();
var graphics = XGraphics.FromPdfPage(page);
var font = new XFont("Arial", 12);
// Simulate generation
var data = new List<string> { "Data 1", "Data 2", "Data 3" };
// Generate PDF from data
var yPos = 20;
foreach (var item in data)
{
    graphics.DrawString(item, font, XBrushes.Black, new XRect(0, yPos, page.Width, page.Height), XStringFormats.TopLeft);
    yPos += 20;
}
// Save the document
document.Save("data-generated.pdf");
Imports PdfSharpCore.Drawing
Imports PdfSharpCore.Pdf
' Create a new PDF document
Private document = New PdfDocument()
Private page = document.AddPage()
Private graphics = XGraphics.FromPdfPage(page)
Private font = New XFont("Arial", 12)
' Simulate generation
Private data = New List(Of String) From {"Data 1", "Data 2", "Data 3"}
' Generate PDF from data
Private yPos = 20
For Each item In data
	graphics.DrawString(item, font, XBrushes.Black, New XRect(0, yPos, page.Width, page.Height), XStringFormats.TopLeft)
	yPos += 20
Next item
' Save the document
document.Save("data-generated.pdf")
VB   C#

結論

IronPDF與PDFSharpCore的比較:圖10 - 授權

當涉及將 PDF 功能整合到您的 .NET 項目中時,選擇 IronPDF 或 PDFSharpCore 需要仔細考慮,IronPDF 因為幾個令人信服的理由而更具優勢。IronPDF 以更多的功能和能力脫穎而出,尤其適合注重 Web 應用程序和綜合 PDF 處理需求的開發者。

IronPDF 在易用性和靈活性方面表現出色,使開發者能夠輕鬆地將 HTML 轉換為 PDF,這是現代 Web 應用程序的一個關鍵功能,因為內容經常以 HTML 格式生成和呈現。此外,IronPDF 支持先進的 PDF 功能,如編輯、合併、安全性和符合 PDF/A 標準,提供了管理複雜 PDF 操作的強大工具包。

IronPDF 不僅通過其綜合功能套件來區分自己,還通過提供 免費試用,允許開發人員在沒有任何初始投資的情況下親自探索其功能。對於那些準備將 IronPDF 集成到開發工作流程中的人,授權價格從 $749 起。

< 上一頁
比較在C#中使用iTextSharp和IronPDF進行PDF拆分
下一個 >
IronPDF與Apryse C#之比較

準備開始了嗎? 版本: 2024.10 剛剛發布

免費 NuGet 下載 總下載次數: 10,993,239 查看許可證 >