跳至頁尾內容
使用 IRONPDF

如何用 C# 寫 PDF 轉換器

能夠從各種文件類型建立 PDF 文檔,是製作原始文件易於閱讀的匯總版本的絕佳方式。例如,您可能已經將作品集以網頁形式展示,但希望將其轉換為易於展示的 PDF 文件,以便與潛在雇主分享。 或者,您可能有一些圖表,其中包含大量重要數據,您想將其作為報告的一部分顯示出來。使用 PDF 轉換器,您可以將報告和圖表轉換為 PDF,並將它們合併到一個易於共享的文件中。

今天,我們將學習如何使用 C# 將文件轉換為 PDF 格式。 我們還將了解IronPDF ,這是一個功能強大的 .NET PDF 庫,以及如何使用它進行 PDF 轉換。 無論處理的是 HTML、圖像還是其他文檔,IronPDF 都提供了一種簡單且有效率的方式來以程式設計方式建立和操作 PDF 文件。

為什麼選擇 IronPDF 進行 PDF 轉換?

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

*高保真 PDF 渲染:由於 IronPDF 對現代 Web 標準有著強大的支持,因此能夠持續地從 HTML 和網頁等 Web 內容產生高品質的 PDF。

  • PDF 產生:從圖片、HTML、DOCX 和 Markdown 等文件格式產生 PDF 文件。 *安全功能:*使用 IronPDF,處理 PDF 安全性(例如 PDF 加密和數位簽章)變得輕而易舉。 易於整合:** IronPDF 可與 ASP.NET 和桌面應用程式無縫整合。

安裝 IronPDF

在使用 IronPDF 將文件轉換為 PDF 文件之前,我們必須先安裝它並將其設定到我們的專案中。 幸好,由於 IronPDF 的實現非常簡便,這項工作可以很快完成。若要安裝 IronPDF 庫,您可以在 NuGet 套件管理器控制台中執行以下命令:

Install-Package IronPdf

或者,您可以使用"管理解決方案的 NuGet 套件"來安裝它:

如何用 C# 寫 PDF 轉換器:圖 1

C# PDF轉換

現在,我們可以看看 IronPDF 如何處理不同文件類型的 PDF 轉換。正如我們之前提到的,IronPDF 是一個功能強大的 PDF 庫,能夠處理多種文件類型的 PDF 轉換。這使得它在需要轉換的場景中非常靈活,而不僅僅是像許多其他 PDF 庫那樣只專注於將 HTML 轉換為 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");
    }
}
$vbLabelText   $csharpLabel

輸出

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

PDF檔案的URL

另一種常見的 PDF 轉換方法是將 URL 轉換為 PDF。 這樣,我們就可以將整個網頁擷取為像素級精確的 PDF 檔案。 使用 URLhttps://www.nuget.org/packages/IronPdf/我們將利用ChromePdfRenderer類別和 IronPDF 對現代 Web 標準的支持,只需幾行程式碼即可產生高品質的 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");
    }
}
$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");
    }
}
$vbLabelText   $csharpLabel

輸出

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

將 DOCX 檔案轉換為 PDF

IronPDF 只需幾行程式碼即可無縫處理 DOCX 到 PDF 的轉換。 首先,我們將建立一個新的DocxToPdfRenderer類別實例,然後使用該實例透過RenderDocxAsPdf()轉換 DOCX 文件,最後儲存 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");
    }
}
$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 RenderHtmlAsPdf()方法可讓您將 HTML 字串無縫渲染到 PDF 文件中。

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

IronPDF 提供了一種使用ChromePdfRenderer類別將 URL 轉換為 PDF 的簡單方法。此功能可將整個網頁精確地擷取為像素級 PDF。

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

使用 IronPDF,您可以利用ImageToPdfConverter類別將 PNG、JPG 和 GIF 等影像檔案轉換為 PDF 檔案。這樣可以輕鬆地將多個影像合併到單一 PDF 文件中。

我可以用C#將DOCX檔轉換為PDF嗎?

是的,您可以使用 IronPDF 的DocxToPdfRenderer類別將 DOCX 檔案轉換為 PDF。 RenderDocxAsPdf 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 中使用 IronPDF 的 async/await 來進行非阻塞式 PDF 產生嗎?

當然。 IronPDF 在 .NET 10 中完全支援 async/await,從而在渲染 PDF(例如使用RenderHtmlAsPdfAsync() )時實現非阻塞操作,非同步保存文件,並能無縫整合到響應式或基於服務的應用程式中。這確保了在現代 .NET 10 開發環境中獲得更佳的效能和可擴充性。

柯蒂斯·週
技術撰稿人

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

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