跳至頁尾內容
使用IRONPDF

如何在.NET庫中壓縮PDF文件

能夠從各種文件型別建立PDF文件是一種非常好的方法,可以製作出一本易於閱讀的原文件彙編版本。例如,您可能會將您的作品集展示為網頁,但希望將其轉換為易於展示的PDF文件以便與潛在的雇主分享。 或者,您可能擁有充滿關鍵資料的圖表,您希望將其作為報告的一部分展示,使用PDF轉換器,您可以將您的報告和圖表轉換為PDF,並將它們合併為一個易於分享的文件。

今天,我們將介紹如何使用C#將文件轉換為PDF格式。 我們還將研究IronPDF,一個強大的.NET PDF程式庫,及其如何用於PDF轉換。 無論您是在處理HTML、圖片還是其他文件,IronPDF都提供了一種簡單而高效的方法,用於程式化地建立和操作PDF文件。

為何使用IronPDF進行PDF轉換?

IronPDF是一個行業標準的程式庫,簡化了PDF的建立和轉換。 它支持將多種格式轉換為PDF,例如HTML、圖片甚至其他PDF。 主要特點包括:

  • 高保真PDF渲染:由於對現代網頁標準的強大支持,IronPDF能够穩定地從像HTML和網頁這類內容中生成高質量的PDF。
  • PDF生成:從文件格式如圖片、HTML、DOCX和Markdown生成PDF文件。
  • 安全功能:使用IronPDF,處理PDF安全問題,例如PDF加密和數位簽章,輕而易舉。
  • 輕鬆整合:IronPDF可以順利整合到ASP.NET和桌面應用中。

安裝IronPDF

在我們開始使用IronPDF將文件轉換為PDF文件前,我們必須安裝並在我們的專案中設置它。 幸運的是,由於IronPDF的易於實作,這可以很快完成。要安裝IronPDF程式庫,您可以在NuGet Package Manager Console中運行以下命令:

Install-Package IronPdf

或者,您可以使用管理NuGet軟體包為解決方案來安裝它:

如何製作C# PDF轉換器:圖1

C# PDF轉換

現在,我們可以看看IronPDF如何處理從不同文件型別進行PDF轉換。如我們先前所述,IronPDF是一個强大的PDF程式庫,能够處理多种文件型別的PDF轉換。這使得它在需要將不僅僅是HTML轉換為PDF的情況下非常靈活,這是許多其他PDF程式庫的重點。 使用IronPDF,您能够只在一個地方完成所有的轉換,而不需要安裝其他程式庫。

將HTML字串轉換為PDF

PDF轉換最常見的情況之一是將HTML內容轉換為PDF文件,而IronPDF使這個過程無縫進行。 在本範例中,我們將轉換一個HTML字串,但對於HTML文件、HTML頁面或HTML文件,步驟類似。 首先,我們將建立一個ChromePdfRenderer實例來將我們的HTML內容渲染為PDF。 然後,使用RenderHtmlAsPdf(),我們可以將HTML內容轉換為PDF,最後保存PDF。

using IronPdf;

class Program
{
    static void Main(string[] args)
    {
        // HTML content to convert
        string html = "<h1>This Document was Converted using IronPDF</h1><p>This document was converted from HTML content</p>";

        // Instantiate the ChromePdfRenderer class
        ChromePdfRenderer renderer = new ChromePdfRenderer();

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

        // Save the rendered PDF document to a file
        pdf.SaveAs("html-to-pdf.pdf");
    }
}
using IronPdf;

class Program
{
    static void Main(string[] args)
    {
        // HTML content to convert
        string html = "<h1>This Document was Converted using IronPDF</h1><p>This document was converted from HTML content</p>";

        // Instantiate the ChromePdfRenderer class
        ChromePdfRenderer renderer = new ChromePdfRenderer();

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

        // Save the rendered PDF document to a file
        pdf.SaveAs("html-to-pdf.pdf");
    }
}
Imports IronPdf

Friend Class Program
	Shared Sub Main(ByVal args() As String)
		' HTML content to convert
		Dim html As String = "<h1>This Document was Converted using IronPDF</h1><p>This document was converted from HTML content</p>"

		' Instantiate the ChromePdfRenderer class
		Dim renderer As New ChromePdfRenderer()

		' Render the HTML content into a PDF document
		Dim pdf As PdfDocument = renderer.RenderHtmlAsPdf(html)

		' Save the rendered PDF document to a file
		pdf.SaveAs("html-to-pdf.pdf")
	End Sub
End Class
$vbLabelText   $csharpLabel

輸出

如何製作C# PDF轉換器:圖2

URL轉換為PDF

另一種常見的PDF轉換方法是將URL轉換為PDF。 這樣,我們可以將整個網頁以像素完美PDF的方式捕獲。 使用URL https://www.nuget.org/packages/IronPdf/,我們將利用ChromePdfRenderer類並結合IronPDF對現代網頁標準的支持,只需幾行程式碼就能生成高質量的PDF。

using System;
using IronPdf;

class Program
{
    static void Main(string[] args)
    {
        // Instantiate the ChromePdfRenderer
        ChromePdfRenderer renderer = new ChromePdfRenderer();

        // Render the URL content into a PDF
        PdfDocument pdf = renderer.RenderUrlAsPdf("https://www.nuget.org/packages/IronPdf/");

        // Save the PDF to a file
        pdf.SaveAs("url-to-pdf.pdf");
    }
}
using System;
using IronPdf;

class Program
{
    static void Main(string[] args)
    {
        // Instantiate the ChromePdfRenderer
        ChromePdfRenderer renderer = new ChromePdfRenderer();

        // Render the URL content into a PDF
        PdfDocument pdf = renderer.RenderUrlAsPdf("https://www.nuget.org/packages/IronPdf/");

        // Save the PDF to a file
        pdf.SaveAs("url-to-pdf.pdf");
    }
}
Imports System
Imports IronPdf

Friend Class Program
	Shared Sub Main(ByVal args() As String)
		' Instantiate the ChromePdfRenderer
		Dim renderer As New ChromePdfRenderer()

		' Render the URL content into a PDF
		Dim pdf As PdfDocument = renderer.RenderUrlAsPdf("https://www.nuget.org/packages/IronPdf/")

		' Save the PDF to a file
		pdf.SaveAs("url-to-pdf.pdf")
	End Sub
End Class
$vbLabelText   $csharpLabel

輸出

如何製作C# PDF轉換器:圖3

將圖片轉換為PDF

IronPDF還支持將圖像文件型別,例如PNG、JPG和GIF,轉換為PDF。 這是一種將多個圖片彙編成一個文件的好方法。 在我們的範例中,我們將使用三個不同的圖片,每張圖片為不同的圖片格式,將它們轉換為新的PDF,然後將它們合併為一個PDF,以展示如何將多張圖片轉換為同一個PDF中。 ImageToPdfConverter類被用於進行圖像的轉換。

using System.Collections.Generic;
using IronPdf;

class Program
{
    static void Main(string[] args)
    {
        // Define image file paths
        string jpgFile = "image-jpg.jpg";
        string pngFile = "image-png.png";
        string gifFile = "image-gif.gif";

        // Convert each image to a separate PDF document
        PdfDocument pdfA = ImageToPdfConverter.ImageToPdf(gifFile);
        PdfDocument pdfB = ImageToPdfConverter.ImageToPdf(pngFile);
        PdfDocument pdfC = ImageToPdfConverter.ImageToPdf(jpgFile);

        // Combine all the PDFs into a single document
        List<PdfDocument> pdfFiles = new List<PdfDocument> { pdfA, pdfB, pdfC };
        PdfDocument mergedPdf = PdfDocument.Merge(pdfFiles);

        // Save the merged PDF document to a file
        mergedPdf.SaveAs("images-to-pdf.pdf");
    }
}
using System.Collections.Generic;
using IronPdf;

class Program
{
    static void Main(string[] args)
    {
        // Define image file paths
        string jpgFile = "image-jpg.jpg";
        string pngFile = "image-png.png";
        string gifFile = "image-gif.gif";

        // Convert each image to a separate PDF document
        PdfDocument pdfA = ImageToPdfConverter.ImageToPdf(gifFile);
        PdfDocument pdfB = ImageToPdfConverter.ImageToPdf(pngFile);
        PdfDocument pdfC = ImageToPdfConverter.ImageToPdf(jpgFile);

        // Combine all the PDFs into a single document
        List<PdfDocument> pdfFiles = new List<PdfDocument> { pdfA, pdfB, pdfC };
        PdfDocument mergedPdf = PdfDocument.Merge(pdfFiles);

        // Save the merged PDF document to a file
        mergedPdf.SaveAs("images-to-pdf.pdf");
    }
}
Imports System.Collections.Generic
Imports IronPdf

Friend Class Program
	Shared Sub Main(ByVal args() As String)
		' Define image file paths
		Dim jpgFile As String = "image-jpg.jpg"
		Dim pngFile As String = "image-png.png"
		Dim gifFile As String = "image-gif.gif"

		' Convert each image to a separate PDF document
		Dim pdfA As PdfDocument = ImageToPdfConverter.ImageToPdf(gifFile)
		Dim pdfB As PdfDocument = ImageToPdfConverter.ImageToPdf(pngFile)
		Dim pdfC As PdfDocument = ImageToPdfConverter.ImageToPdf(jpgFile)

		' Combine all the PDFs into a single document
		Dim pdfFiles As New List(Of PdfDocument) From {pdfA, pdfB, pdfC}
		Dim mergedPdf As PdfDocument = PdfDocument.Merge(pdfFiles)

		' Save the merged PDF document to a file
		mergedPdf.SaveAs("images-to-pdf.pdf")
	End Sub
End Class
$vbLabelText   $csharpLabel

輸出

如何製作C# PDF轉換器:圖4

將DOCX文件轉換為PDF

IronPDF能輕鬆地處理DOCX轉為PDF的轉換,只需幾行程式碼即可完成。 首先,我們將建立DocxToPdfRenderer類的新實例,然後使用RenderDocxAsPdf()將DOCX文件轉換為PDF,最後保存PDF。

using IronPdf;

class Program
{
    static void Main(string[] args)
    {
        // Instantiate the DocxToPdfRenderer 
        DocxToPdfRenderer renderer = new DocxToPdfRenderer();

        // Convert the DOCX file to a PDF
        PdfDocument pdf = renderer.RenderDocxAsPdf("Meeting notes.docx");

        // Save the converted PDF document
        pdf.SaveAs("docx-to-pdf.pdf");
    }
}
using IronPdf;

class Program
{
    static void Main(string[] args)
    {
        // Instantiate the DocxToPdfRenderer 
        DocxToPdfRenderer renderer = new DocxToPdfRenderer();

        // Convert the DOCX file to a PDF
        PdfDocument pdf = renderer.RenderDocxAsPdf("Meeting notes.docx");

        // Save the converted PDF document
        pdf.SaveAs("docx-to-pdf.pdf");
    }
}
Imports IronPdf

Friend Class Program
	Shared Sub Main(ByVal args() As String)
		' Instantiate the DocxToPdfRenderer 
		Dim renderer As New DocxToPdfRenderer()

		' Convert the DOCX file to a PDF
		Dim pdf As PdfDocument = renderer.RenderDocxAsPdf("Meeting notes.docx")

		' Save the converted PDF document
		pdf.SaveAs("docx-to-pdf.pdf")
	End Sub
End Class
$vbLabelText   $csharpLabel

如何製作C# PDF轉換器:圖5

結論

在今日的數位環境下,將文件轉換為像PDF這樣普遍可得的格式是確保一致性、可攜性和專業展示的關鍵。 使用IronPDF,將強大的C# PDF轉換功能整合到您的應用中,不僅高效,而且極具靈活性。

在整個教程中,我們展示了如何輕鬆地將HTML文件、網頁、圖片、URL,甚至是DOCX文件轉換成經過潤色的專業PDF。 但這只是冰山一角。IronPDF提供了除基本轉換之外的廣泛功能,例如:

  • 合併多個PDF為單一文件。
  • 新增安全功能,如密碼保護和數位簽章。
  • 從現有PDF中提取文字和圖像。
  • 用實時資料生成動態PDF,使其非常適合於生成發票、報告和證書。

準備好將您的文件處理提到更高層次了嗎? 今天就開始使用IronPDF的免費試用,在您的C#專案中解鎖PDF操作的全部潛力。

欲進一步探討高階功能、優化方案和實用範例,請存取官方IronPDF 文件,並加入開發者社群,一同改變當代應用中PDF處理方式。

常見問題

如何在C#中將HTML內容轉換為PDF?

您可以使用IronPDF程式庫的ChromePdfRenderer類來將HTML內容轉換為PDF。RenderHtmlAsPdf()方法可讓您將HTML字串無縫渲染成PDF文件。

C#中將URLs轉換為PDF的最佳方法是什麼?

IronPDF提供了一種簡單的方法來将URLs轉換為PDF,使用ChromePdfRenderer類。此功能可以捕捉整個網頁並轉換為像素完美的PDF。

如何使用C#將圖像轉換為PDF?

使用IronPDF,您可以使用ImageToPdfConverter類將圖像文件(如PNG、JPG和GIF)轉換為PDF。這使得多個圖像可以方便地合併成一個PDF文件。

我可以在C#中將DOCX文件轉換為PDF嗎?

是的,您可以使用IronPDF的DocxToPdfRenderer類將DOCX文件轉換為PDF。RenderDocxAsPdf()方法幫助建立並保存DOCX內容為PDF。

IronPDF進行PDF轉換的主要功能有哪些?

IronPDF提供高保真渲染、與ASP.NET整合、密碼保護、數位簽名以及合併和提取PDF內容的功能。

有辦法使用C#合併多個PDF嗎?

IronPDF允許您將多個PDF合併為一個文件。這可以通過程式庫提供的PDF合併功能來完成。

如何為我的PDF文件新增安全性?

IronPDF提供安全功能,如密碼保護和數位簽名,確保您的PDF文件的機密性和真實性。

有哪些資源可以學習更多有關IronPDF的知識?

您可以在IronPDF的官方網站上找到豐富的資源和文件,包括教程、範例以及詳細的API參考指南。

IronPDF 是否完全相容 .NET 10?

是的 — IronPDF設計支援.NET 10(以及.NET 9, 8, 7, 6, Core, Standard和Framework)。您可以通過NuGet安裝它,並使用其全範圍的HTML、URL、圖像、DOCX轉換、編輯、簽名和部署功能,而無需特別的變通方法。
• 官方的相容性列表中將.NET 10列入支援平台之一。

我可以在.NET 10中使用async/await與IronPDF進行非阻塞PDF生成嗎?

當然可以。IronPDF完全支援.NET 10中的async/await,這使得渲染PDF(例如使用RenderHtmlAsPdfAsync())、非同步保存文件,並且平穩地整合到響應式或基於服務的應用中。這確保了現代.NET 10開發環境中的更好性能和擴展性。

Curtis Chau
技術作家

Curtis Chau擁有Carleton大學的電腦科學學士學位,專精於前端開發,擁有Node.js、TypeScript、JavaScript和React的專業知識。Curtis熱衷於建立直觀且美觀的使用者介面,喜愛使用現代框架並建立結構良好、視覺吸引力的手冊。

除了開發,Curtis對物聯網(IoT)有濃厚的興趣,探索創新的方法來整合硬體和軟體。在空閒時間,他喜歡玩遊戲和建立Discord機器人,結合他對技術的熱愛與創造力。

Iron 支援團隊

我們線上24小時,每週5天。
聊天
電子郵件
給我打電話