IRONSOFTWAREHOME
使用IRONPDF

C#從PDF提取文字 (程式碼範例教學)

Curtis Chau
Curtis Chau
Updated: 2026年4月21日

大多數人使用專用的桌面應用程式在電腦上打開PDF,但軟體工程師也可以使用IronPDF以C#程式方式建立、查看、打開、閱讀和編輯PDF內容。

IronPDF被證明是一個非常有用的插件,當在ASP.NET和C#中閱讀PDF文件時。

您可以下載ASP.NET PDF演示專案。

使用IronPDF,以C#快速且輕鬆地建立PDF文件是可能的。

PDF文件的許多設計和佈局可以通過使用現有的HTML資源或將任務委派給網頁設計員來完成; 它處理將PDF生成整合到您的應用程式中的耗時任務,並自動將準備好的文件轉換為PDF。 使用.NET,您可以:

  • 將網頁表單、本地HTML頁面和其他網站轉換為PDF格式。
  • 允許使用者下載文件、通過電子郵件分享給其他人或將其儲存在雲端。
  • 開具客戶發票並提供報價; 準備報告; 協商合同和其他文書。
  • 使用ASP.NET、ASP.NET Core、Web Forms、MVC、在.NET Framework和.NET Core下的Web APIs和其他程式語言合作。

設置IronPDF程式庫

有兩種方式安裝程式庫:

使用NuGet包管理器安裝

IronPDF可以通過Visual Studio插件或NuGet包管理器從命令行安裝。在Visual Studio的控制台中導航,然後輸入以下命令:

PM > Install-Package IronPdf

直接從網站下載DLL文件

或者,您可以直接從網站獲取DLL。

請記得在任何使用IronPDF的cs類文件的頂部包含以下指令:

using IronPdf;

查看IronPDF詳細功能概覽。

IronPDF是必備的插件。 立即獲取您的版本並使用IronPDF NuGet包試用。

Create a PDF File From an HTML String in .NET C#

從HTML字串在C#中建立PDF文件是建立C#新PDF文件的一種高效且有成效的方法。

ChromePdfRenderer,提供了一種簡單的方法來將任何HTML(HTML5)字串轉換為PDF文件,這要歸功於IronPDF DLL中嵌入的Google Chromium引擎版本。

// Create a renderer to convert HTML to PDF
var renderer = new ChromePdfRenderer();

// Convert an HTML string to a PDF
using var renderedPdf = renderer.RenderHtmlAsPdf("<h1>My First HTML to Pdf</h1>");

// Define the output path for the PDF
var outputPath = "My_First_Html.pdf";

// Save the rendered PDF to the specified path
renderedPdf.SaveAs(outputPath);

// Automatically open the newly created PDF
System.Diagnostics.Process.Start(outputPath);

RenderHtmlAsPdf是一個強大的工具,完全支持CSS、JavaScript和圖片。 如果這些材料儲存在硬碟上,則可能需要設置RenderHtmlAsPdf的第二個參數。

以下程式碼將生成一個PDF文件:

// Render HTML to PDF with a base path for local assets
var renderPdf = renderer.RenderHtmlAsPdf("<img src='image_1.png'/>", @"C:\Newproject");

所有參考的CSS樣式表、圖片和JavaScript文件將相對於BaseUrlPath,從而保持更有條理和邏輯的結構。 當然,您可以選擇使用可在網路上獲得的圖片、樣式表和資源,例如Web字體、Google字體,甚至jQuery。

使用現有HTML網址建立PDF文件

使用C#高效地將現有網址轉換為PDF; 這還使團隊能夠將PDF設計與後端PDF渲染工作劃分到各個部分,這是有益的。

以下程式碼展示如何從其網址渲染endeavorcreative.com頁面:

// Create a renderer for converting URLs to PDF
var renderer = new ChromePdfRenderer();

// Convert the specified URL to a PDF
using var renderedPdf = renderer.RenderUrlAsPdf("https://endeavorcreative.com/setting-up-wordpress-website-from-scratch/");

// Specify the output path for the PDF
var outputPath = "Url_pdf.pdf";

// Save the PDF to the specified path
renderedPdf.SaveAs(outputPath);

// Open the newly created PDF
System.Diagnostics.Process.Start(outputPath);

因此,生成的PDF中保留了所有超連結(HTML連結)甚至HTML表單。

從現有HTML文件建立PDF文件

本節展示如何渲染任何本地HTML文件。看起來文件已經使用file:/協議打開,適用於所有相關資源,如CSS、圖片和JavaScript等。

// Create a renderer for existing HTML files
var renderer = new ChromePdfRenderer();

// Render an HTML file to PDF
using var renderedPdf = renderer.RenderHtmlFileAsPdf("Assets/test1.html");

// Specify the output path for the PDF
var outputPath = "test1_pdf.pdf";

// Save the PDF to the specified path
renderedPdf.SaveAs(outputPath);

// Open the newly created PDF
System.Diagnostics.Process.Start(outputPath);

此策略的優勢在於,允許開發者在建立時在瀏覽器中測試HTML內容。 IronPDF的渲染引擎基於Chrome網頁瀏覽器。 因此,建議使用XML轉PDF轉換,因為可以使用XSLT模板來將XML內容列印到PDF。

將ASP.NET Web表單轉換為PDF文件

僅用一行程式碼,您就可以將ASP.NET網上表單轉換為PDF格式,而不是HTML。 將程式碼行放置在頁面後面的程式碼文件中的Page_Load方法中,使其出現在頁面上。

ASP.NET Web表單應用程式可以從頭建立也可以從先前版本打開。

如果尚未安裝,請安裝NuGet包。

IronPdf命名空間。

導航到您想轉換為PDF的頁面程式碼後文件。 例如,使用ASP.NET的文件Default.aspx.cs。

AspxToPdf類上的方法。

using IronPdf;
using System;
using System.Web.UI;

namespace WebApplication7
{
    public partial class _Default : Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            // Render the current page as a PDF in the browser
            AspxToPdf.RenderThisPageAsPdf(AspxToPdf.FileBehavior.InBrowser);
        }
    }
}

這需要安裝IronPdf.Extensions.ASPX NuGet包。 在.NET Core中不可用,因為ASPX被MVC模型取代。

應用HTML模板化

對於內聯網和網站開發人員來說,具備模板化或"批量生產"PDF的能力是標準需求。

與其為PDF文件建立模板,不如使用IronPDF程式庫提供的方法,通過利用現有、經過充分測試的技術來生成HTML的模板。

當HTML模板使用查詢字串或資料庫中的資料進行補充時,會生成一個動態建立的PDF文件,如下所示。

例如,考慮C#字串類及其屬性。 格式化方法非常適合基本的"郵件合併"操作。

// Basic HTML String Formatting
string formattedString = String.Format("<h1>Hello {0}!</h1>", "World");

由於HTML文件可以非常繁瑣,通常使用任意占位符,如[[NAME]],然後用實際資料替換它們。

以下範例將生成三個PDF文件,每個文件將根據不同的使用者進行自定義。

// Define an HTML template with a placeholder
var htmlTemplate = "<p>[[NAME]]</p>";

// Sample data to replace placeholders
var names = new[] { "John", "James", "Jenny" };

// Create a new PDF for each name
foreach (var name in names)
{
    // Replace placeholder with actual name
    var htmlInstance = htmlTemplate.Replace("[[NAME]]", name);

    // Create a renderer and render the HTML as PDF
    var renderer = new ChromePdfRenderer();
    using var pdf = renderer.RenderHtmlAsPdf(htmlInstance);

    // Save the PDF with the name in the filename
    pdf.SaveAs($"{name}.pdf");
}

ASP.NET MVC路由:下載此頁面的PDF版本

使用ASP.NET MVC框架,您可以將使用者導向至PDF文件。

無論是構建新的ASP.NET MVC應用程式還是將現有MVC控制器新增到現有應用程式中,請選擇此選項。 通過從下拉選單中選擇ASP.NET Web應用程式 (.NET Framework) > MVC來啟動Visual Studio新專案精靈。 或者,您可以打開現有MVC專案。 替換Controllers資料夾中的HomeController文件中的Index方法,或在Controllers資料夾中建立一個新的控制器。

以下是程式碼應如何編寫的範例:

using IronPdf;
using System;
using System.Web.Mvc;

namespace WebApplication8.Controllers
{
    public class HomeController : Controller
    {
        public ActionResult Index()
        {
            // Render a URL as PDF and return it in the response
            using var pdf = HtmlToPdf.StaticRenderUrlAsPdf(new Uri("https://en.wikipedia.org"));
            return File(pdf.BinaryData, "application/pdf", "Wiki.Pdf");
        }

        public ActionResult About()
        {
            ViewBag.Message = "Your application description page.";
            return View();
        }

        public ActionResult Contact()
        {
            ViewBag.Message = "Your contact page.";
            return View();
        }
    }
}

向PDF文件新增封面

如何在ASP.NET中使用C#和IronPDF查看PDF文件,圖1:向PDF文件新增封面 向PDF文件新增封面

IronPDF簡化了合併PDF文件的過程。 此技術最常見的應用是為已渲染的PDF文件新增封面或背面頁面。

為此,準備一個封面頁,然後使用PdfDocument能力。

要合併這兩個文件,使用Merge PDF Documents Method。

// Create a renderer and render a PDF from a URL
var renderer = new ChromePdfRenderer();
using var pdf = renderer.RenderUrlAsPdf("https://www.nuget.org/packages/IronPdf/");

// Merge the cover page with the rendered PDF
using var merged = PdfDocument.Merge(new PdfDocument("CoverPage.pdf"), pdf);

// Save the merged document
merged.SaveAs("Combined.Pdf");

為您的文件新增水印

最後但同樣重要的是,使用C#程式碼可以在PDF文件中新增水印; 這可以用來在文件的每一頁新增免責聲明,指出其"保密"或"樣本"。

// Prepare a stamper with HTML content for the watermark
HtmlStamper stamper = new HtmlStamper("<h2 style='color:red'>SAMPLE</h2>")
{
    HorizontalOffset = new Length(-3, MeasurementUnit.Inch),
    VerticalAlignment = VerticalAlignment.Bottom
};

// Create a renderer and render a PDF from a URL
var renderer = new ChromePdfRenderer();
using var pdf = renderer.RenderUrlAsPdf("https://www.nuget.org/packages/IronPdf");

// Apply the watermark to the PDF
pdf.ApplyStamp(stamper);

// Save the watermarked PDF
pdf.SaveAs(@"C:\PathToWatermarked.pdf");

您的PDF文件可以使用密碼保護

當您設置PDF文件的密碼屬性時,文件將被加密,使用者將需要提供正確的密碼才能閱讀文件。 此樣本可以在.NET Core控制台應用程式中使用。

using IronPdf;

namespace ConsoleApp
{
    class Program
    {
        static void Main(string[] args)
        {
            // Create a renderer and render a PDF from HTML
            var renderer = new ChromePdfRenderer();
            using var pdfDocument = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>");

            // Set password to protect the PDF
            pdfDocument.Password = "strong!@#pass&^%word";

            // Save the secured PDF
            pdfDocument.SaveAs("secured.pdf");
        }
    }
}

沒有上述優勢,使用IronPDF,您還可以:

建立PDF是一項具有挑戰性的工程; 有些人可能從未接觸過他們應該用來製作最出色文件的基本概念。 因此,IronPDF非常有幫助,因為它簡化了建立PDF的過程,從而改善從PDF和HTML建立的文件的原始展示。

根據文件提供的情報和競爭對手分析:IronPDF是建立PDF時最有效的工具,使任何人都能輕鬆地完成任務,無論是在辦公室還是學校工作的人。

如何在ASP.NET中使用C#和IronPDF查看PDF文件,圖2:如何在ASP.NET中使用C#和IronPDF查看PDF文件 如何在ASP.NET中使用C#和IronPDF查看PDF文件

IronPDF是一個必備的.NET程式庫。 立即獲取您的版本並使用IronPDF NuGet包試用。

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% 解鎖。無需信用卡。

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

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

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

版本: 2026.9

PM > Install-Package IronPdf
nuget.org/packages/IronPdf/
  1. 在解決方案資源管理器,右鍵點選參考,管理NuGet包
  2. 選擇瀏覽並搜尋"IronPdf"
  3. 選擇套件並安裝
C# PDF DLL
下載DLL

版本: 2026.9

或者點擊此處下載Windows安裝程式。

  1. 下載並解壓IronPDF到類似~/Libs的位置,位於您的解決方案目錄中
  2. 在Visual Studio解決方案資源管理器,右鍵點選參考。選擇瀏覽,"IronPdf.dll"

授權從$999起