IRONSOFTWAREHOME
使用IRONPDF

如何使用OCR.net和IronPDF用C#構建PDF OCR工作流程

Curtis Chau
Curtis Chau
Updated: 2026年7月12日

在.NET Core中生成PDF文件,使用IronPDF的ChromePdfRenderer將HTML字串、網頁或Razor視圖轉換為PDF文件,只需幾行程式碼,保持所有CSS樣式和JavaScript功能。

在.NET Core應用程式中建立PDF文件是一個常見的需求,尤其是在構建需要生成發票、報表和其他商業文件的網頁應用時。 IronPDF提供了功能齊全的PDF程式庫,通過其Chrome渲染引擎簡化了在ASP.NET Core中的PDF生成,始終交付像素完美的PDF。在本指南中,您將探索如何在.NET 10環境中處理各種PDF生成任務,從簡單的HTML轉換到使用C#頂級語句的複雜報表生成。

.NET Core如何生成PDF文件?

IronPDF使用基於Chrome的渲染引擎將HTML內容轉換為PDF文件。 這種方法意味著您可以使用現有的HTML和CSS知識建立PDF,而無需學習複雜的低階PDF API或面對陡峭的學習曲線。 程式庫自動處理網頁的轉換,支持JavaScript執行和響應式CSS佈局。

程式庫的API允許您從HTML字串、URL或本地HTML文件生成PDF文件。 在將HTML轉換為PDF時,IronPDF保持複雜的佈局、CSS樣式、JavaScript執行和動態網頁內容。 這使得它成為需要可靠PDF轉換功能的.NET開發者在應用中實現的實用選擇。

渲染過程使用驅動Google Chrome的相同技術,確保HTML轉PDF轉換與使用者在現代瀏覽器中看到的一致。 包括對CSS3功能、網頁字體、SVG圖形以及像Flexbox和CSS Grid這樣的現代佈局系統的支持。 由於渲染引擎是基於Chrome的,輸出在開發、測試和生產環境中是一致且可預測的。

如何在.NET 10專案中安裝IronPDF?

開始只需要通過NuGet套件管理器進行一次安裝。 根據您的工作流程,您有兩個選擇。

選項1:Visual Studio中的套件管理器控制台

PM > Install-Package IronPdf

選項2:.NET CLI

dotnet add package IronPdf

有關安裝逐步指南,請參閱NuGet安裝指南

對於Docker部署或Linux環境,可能需要其他系統依賴項。 IronPDF支持macOS、Windows、Linux、Azure和AWS Lambda,使其能夠適應各種託管場景。 安裝後,新增一個試用授權金鑰以在開發期間解鎖完整功能集。 試用是免費的,且不需要信用卡,您可以在購買商業授權前充分評估該程式庫。

如何從HTML字串生成PDF?

建立PDF最直接的方法是轉換HTML內容。 以下是一個使用C#頂級語句的簡單例子:

using IronPdf;

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

// Convert an HTML string to PDF
var pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1><p>This is a PDF generated from HTML.</p>");

// Save to disk
pdf.SaveAs("hello.pdf");

ChromePdfRenderer類負責處理轉換過程。 返回的PdfDocument物件使您可以存取二進制資料、頁數和輸出選項,例如保存到文件或記憶流。 您也可以將元資料如標題、作者和主題關鍵詞附加到輸出文件。

渲染器支持多種渲染選項。 您可以配置自定義邊距、設置紙張大小、控制頁面方向和調整視角尺寸。 這些選項確保PDF輸出符合專業文件的特定格式要求。

如何使用CSS樣式建立PDF發票?

為實現一個更真實的例子,以下是如何生成一個帶樣式的發票文件,包括HTML標記和CSS:

using IronPdf;

var html = @"
<html>
<head>
    <style>
        body { font-family: Arial, sans-serif; font-size: 14px; }
        .invoice-header {
            background-color: #2c3e50;
            color: white;
            padding: 20px;
        }
        .invoice-details { margin: 20px 0; }
        table { width: 100%; border-collapse: collapse; }
        th, td {
            padding: 12px;
            text-align: left;
            border-bottom: 1px solid #ddd;
        }
        .total {
            font-size: 1.2em;
            font-weight: bold;
            text-align: right;
        }
    </style>
</head>
<body>
    <div class='invoice-header'>
        <h1>Invoice #2026-001</h1>
        <p>Date: February 28, 2026</p>
    </div>
    <div class='invoice-details'>
        <h3>Bill To: Jane Smith</h3>
        <table>
            <tr>
                <th>Item</th>
                <th>Quantity</th>
                <th>Price</th>
            </tr>
            <tr>
                <td>Professional License</td>
                <td>1</td>
                <td>$999</td>
            </tr>
        </table>
        <p class='total'>Total: $999</p>
    </div>
</body>
</html>";

var renderer = new ChromePdfRenderer();

// Apply custom margins
renderer.RenderingOptions.MarginTop = 10;
renderer.RenderingOptions.MarginBottom = 10;

var pdf = renderer.RenderHtmlAsPdf(html);
pdf.SaveAs("invoice.pdf");
C#

此範例顯示了IronPDF處理含有CSS樣式的複雜佈局的能力,包括字體設置、背景顏色和表格格式化。 程式庫處理HTML標記,並產生一個匹配源文件圖像外觀的PDF。

為了改進排版,IronPDF支持Google字體和網頁圖標字體,使您能夠建立視覺上精美的PDF。 該程式庫還處理分層文件設計。 您可以將自定義水印或戳記內容新增到現有PDF。

生成的PDF發票看起來如何?

PDF發票顯示發票#2026-001,日期為2026年2月28日,顯示對$999購買Professional License,標題部分顯示為深藍色。 發票演示了保存的CSS樣式,包括自定義字體、顏色和表格格式,這些都通過HTML至PDF轉換生成。

如何將Web頁面URL轉換為PDF?

IronPDF可以通過將URL傳遞給渲染器來從即時的網頁生成PDF。 這在需要動態捕獲網頁內容或存檔公共頁面時非常有用:

using IronPdf;

var renderer = new ChromePdfRenderer();

// Configure viewport and JavaScript settings
renderer.RenderingOptions.ViewPortWidth = 1920;
renderer.RenderingOptions.EnableJavaScript = true;
renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Screen;
renderer.RenderingOptions.WaitFor.RenderDelay(1500); // Allow dynamic content to load

// Render the URL to PDF
var pdf = renderer.RenderUrlAsPdf("https://example.com");

// Save to disk
pdf.SaveAs("webpage.pdf");

RenderDelay設置確保在PDF捕捉之前,JavaScript驅動的內容(如圖表、延遲載入的圖像、動態表格)完成渲染。 您還可以配置WaitFor條件,以等待特定DOM元素或網路請求完成。 對於需要身份驗證的頁面,程式庫支持HTTP請求標頭和自定義Cookie。

對於基於Angular或React構建的複雜單頁應用,額外的等待條件有助於確保所有客戶端渲染完成,然後進行PDF捕捉。

分屏顯示一個網頁在左邊的瀏覽器中渲染,以及其在使用IronPDF in .NET Core轉換後的右邊顯示PDF版本。 PDF版本保留了所有格式、圖像和佈局結構,展示了高保真的HTML至PDF轉換。

如何將PDF生成整合到ASP.NET Core控制器中?

在ASP.NET Core Web API內生成PDF非常簡單。 以下範例顯示了一個控制器動作,該動作構建一個HTML報表並以文件下載的形式返回:

using Microsoft.AspNetCore.Mvc;
using IronPdf;

[ApiController]
[Route("api/[controller]")]
public class PdfController : ControllerBase
{
    [HttpGet("generate-report")]
    public IActionResult GenerateReport()
    {
        var html = @"
            <h1>Monthly Sales Report</h1>
            <p>Generated on: " + DateTime.Now.ToString("MMMM dd, yyyy") + @"</p>
            <table>
                <tr><th>Product</th><th>Sales</th></tr>
                <tr><td>Product A</td><td>$5,000</td></tr>
                <tr><td>Product B</td><td>$3,500</td></tr>
            </table>";

        var renderer = new ChromePdfRenderer();
        var pdf = renderer.RenderHtmlAsPdf(html);

        // Return the PDF bytes as a downloadable file
        return File(pdf.BinaryData, "application/pdf", "monthly-report.pdf");
    }
}

File()返回型別告知ASP.NET Core將原始PDF位元組流傳輸給客戶端瀏覽器,並附帶正確的MIME型別。 客戶端接收可下載的PDF,而不需要在磁碟上生成中間文件。 您可以將標題和頁腳新增到每一頁,或為草稿或機密文件應用水印

對於生產應用,考慮使用異步PDF生成以保持請求管道非阻塞,特別是在生成大型或複雜文件時。

如何在MVC中將Razor視圖渲染為PDF?

對於MVC應用,您可以將Razor視圖渲染為HTML字串,然後轉換為PDF。 這種模式將您的文件模板保存在標準.cshtml文件中:

[HttpGet]
public async Task<IActionResult> DownloadInvoice(int id)
{
    // Fetch invoice data from the database
    var model = await GetInvoiceData(id);

    // Render the Razor view to an HTML string
    var html = await RenderViewToString("Invoice", model);

    // Convert the rendered HTML到PDF
    var renderer = new ChromePdfRenderer();
    var pdf = renderer.RenderHtmlAsPdf(html);

    // Return the file to the browser
    return File(pdf.BinaryData, "application/pdf", $"invoice-{id}.pdf");
}

這種方法讓您可以將發票或報表模板維持為普通的Razor視圖,使用模型綁定和部分視圖。 RenderViewToString輔助方法(MVC項目中的常用工具)將視圖轉換為IronPDF處理的純HTML字串。 對於Razor Pages或Blazor Server項目,類似的模式適用。

PDF檢視器顯示了一份月度銷售報告,列示了產品A($5,000)和產品B($3,500)的銷售資料。 報告演示了從ASP.NET Core控制器動作生成的乾淨表格格式和專業佈局。

IronPDF支持哪些高級PDF功能?

除基礎HTML至PDF轉換外,IronPDF提供了一系列文件操作功能:

  • 合併和拆分:使用合併和拆分API合併多個PDF或提取特定頁面
  • 數位簽名:應用基於證書的數位簽名以進行文件驗證
  • 文字提取從PDF文件中提取文字以進行搜索索引或資料處理
  • PDF表單:以程式化方式建立和填寫PDF表單,以實現自動化文件工作流程
  • 將PDF頁面轉換為圖像導出PDF頁面為圖像以供縮圖或預覽
  • HTML字串渲染:對HTML字串至PDF轉換選項進行精細控制
  • 安全性:密碼保護、加密和權限控制保持敏感文件的安全

對於性能關鍵的工作負載,IronPDF提供異步方法和多執行緒支持。 該程式庫還處理圖像至PDF轉換、PDF壓縮和線性化以加快網頁瀏覽。

IronPDF核心功能概述
功能描述典型使用案例
HTML到PDF將HTML字串、文件或URL轉換為PDF發票、報表、網頁存檔
Razor至PDF將Razor視圖(.cshtml)渲染為PDFMVC和Razor Pages應用
合併 / 拆分合併或分割PDF文件文件捆綁、頁面提取
數位簽名應用X.509證書簽名法律文件、合同工作流程
文字提取從現有PDF中讀取文字內容搜索索引、資料遷移
PDF表單建立和填寫互動式表單域自動化資料收集
頁眉和頁腳新增頁碼、日期和自定義文字專業文件格式化

如何在.NET 10中開始使用IronPDF?

IronPDF使.NET Core中的PDF生成變得簡單。 其Chrome渲染引擎確保從HTML內容建立PDF時的精確保真度,而API設計則消除了與PDF操作相關的典型複雜性。 該程式庫提供完整文件供所有功能使用,並支持部署在Windows、Linux、macOS、Azure Functions、AWS Lambda和Docker容器上。

無論您是在構建發票、報表或文件管理工具,IronPDF都提供了實現專業PDF建立所需的工具。 查看完整功能列表了解程式庫的全部功能範圍,或者查看授權選擇以適合個人開發者和企業團隊。

今天開始免費試用在您的.NET 10專案中測試IronPDF。 試用授權涵蓋完整功能集,因此您可以在承諾購買授權之前評估PDF生成、合併、簽名、表單填寫和文字提取。

為了獲得更多上下文,請探索IronPDF文件首頁以獲得API參考、平台指南和常見.NET PDF場景程式碼範例


外部參考:

Curtis Chau
技術作家

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

...
閱讀更多

相關文章

Key in blue circle

立即免費取得 30 天試用金鑰

Your trial license will be sent to your email address

無任何限制。100% 解鎖。無需信用卡。

bullet_checked無需信用卡或建立帳號無任何限制。100% 解鎖。無需信用卡。
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
預訂您的免費現場演示
Booking Badge

受到全球數百萬工程師的信任

Iron Software的客戶標誌
獲取您的無義務諮詢
填寫以下表格或電子郵件sales@ironsoftware.com
您的詳細資訊將始終保密
受到全球數百萬工程師的信任
Iron Software的客戶標誌
立即獲取您的30天試用金鑰
無需信用卡或帳戶建立