
PDF轉換器.NET(開發者教程)
了解如何在 .NET MAUI 應用中利用 IronPDF 從 PDF 文件中提取並顯示嵌入文字。 這個強大的 C# 程式庫可以讓您僅需少量程式碼即可在跨平台應用中讀取 PDF 內容並顯示它。
.NET 多平台應用 UI (MAUI) 簡化了多平台應用開發。 通過這種 Xamarin.Forms 的演進,您可以從單個專案中為 Android、iOS、macOS 和 Windows 建立應用。 PDF 文件因能夠保留字體、圖像和布局而備受推崇,通常使用這種技術進行管理。
IronPDF 程式庫 提供強大的 PDF 處理功能。 您可以利用 IronPDF 無需費力地處理嵌入文字,從而簡化建立和操作 PDF 文件的過程,同時保持預設設置下的穩定渲染。
什麼是 PDF 嵌入文字和字體嵌入?
PDF 嵌入文字是指嵌入在 PDF 文件中的文字實體。這確保了包括 Adobe InDesign 在內的 PDF 查看器應用的一致性和精確渲染。 通過在 PDF 文件中嵌入字體,即使查看者應用程式未安裝特定字體,也能保留正確的字體。
嵌入字體可能增加文件大小,但對於保持原始文件外觀至關重要。 Adobe PDF 設定通常決定是否嵌入字體。 PDF 壓縮技術可以在嵌入字體時減小文件大小。
PDF 中有三種型別的嵌入字體:
- **嵌入字體:**整套字體嵌入在文件中。
- **子集嵌入字體:**僅嵌入原始文件中使用的字體子集。
- **無嵌入字體:**文件中不嵌入任何字體。
在 Adobe Acrobat 中,您可以通過查看文件屬性來驗證字體嵌入。 預設情況下,字體嵌入在 PDF 中。 然而,這些設置可以使用 Adobe Acrobat Pro 或類似 IronPDF 的字體管理功能進行修改。
"扁平化 PDF"包含所有嵌入字體,使其自包含且確保在所有系統上的一致外觀顯示。 IronPDF 支援扁平化 PDF 文件以確保穩定渲染。
什麼是 IronPDF C#?
IronPDF 文件是一個強大的 C# PDF 程式庫,可以讓您在 .NET 應用中生成、讀取和編輯 PDF 文件。 您可以從 HTML 生成 PDF 文件與 IronPDF。
一個關鍵特徵是處理 PDF 文件中的嵌入字。 在 PDF 中嵌入字體即使在未裝有原始字體的系統上查看文件也能保留文件的原始外觀。 讓我們探索在 .NET MAUI 中使用 IronPDF 顯示嵌入文字的方式。
IronPDF 提供豐富的文字提取能力,以便程式化地處理 PDF 內容。 無論您需要在 C# 中解析 PDF還是將 PDF 內容轉換成其他格式,IronPDF 提供必要工具。
- **.NET MAUI:**微軟的一個統一 UI 工具包,可以讓您用單一共享程式碼庫建立 Android、iOS、macOS 和 Windows 應用。 您可以從微軟網站下載 .NET MAUI。
- **Visual Studio 2022(或更高版):**一個功能強大且使用者友好的 .NET 編程整合開發環境 (IDE) 。 您可以從微軟網站下載 Visual Studio。確保在 Visual Studio 2022 上安裝了 .NET MAUI 工作負載。
- **IronPDF 程式庫:**這是一個 .NET 的 PDF 處理程式庫,我們將使用它與 PDF 文件進行互動。 您可以通過 NuGet 安裝 IronPDF,這是一個微軟開發平台的程式包管理器。
- **Adobe PDF 文件:**為了這篇教程,我們需要一個 PDF 文件。
在開始之前,請確保您有這些需求:
- .NET MAUI:微軟的一個用於建立跨平台應用的統一 UI 工具包。從微軟網站下載。
- Visual Studio 2022(或更高版):用於 .NET 編程的功能強大的 IDE,並安裝有 .NET MAUI 工作負載。
- IronPDF 程式庫:通過 NuGet 程式包管理器進行安裝。 了解 IronPDF NuGet 套件。
- 一個 PDF 文件:任何用於測試的 PDF 文件。
針對特定平台的設置:
- Windows: IronPDF Windows setup guide
- macOS : macOS 安裝指南
- Linux : Linux 設置說明
我該如何建立 .NET MAUI App?
請遵循以下步驟建立一個新的 .NET MAUI App:
**啟動 Visual Studio 2022:**啟動後,導航到 檔案 > 新建 > 專案。 在專案模板窗口中選擇 .NET MAUI App 然後點擊 下一步。
圖 1:Visual Studio 新專案對話框,突出顯示 .NET MAUI 模板,顯示建立新的 .NET MAUI 應用的第一步。
**命名您的專案:**在下一個窗口中,您需要為您的專案命名。 讓我們命名它為 IronPDF_Read_and_View。 選擇一個位置保存您的專案,然後點擊 下一步。
圖 2:配置專案 - 設置新的 .NET MAUI 應用,並整合 IronPDF 以實現跨平台 PDF 查看能力。
**選擇框架:**從下拉列表中選擇 .NET Framework。選擇最新的 .NET Framework以確保過程順利,然後點擊"建立"按鈕。
圖 3:選擇 .NET Framework版本及新 .NET MAUI 應用的目標平台
我如何安裝 IronPDF?
建立 .NET MAUI App 後,安裝 IronPDF 程式庫:
-
**打開 NuGet 程式包管理器:**導航到 工具 > NuGet 程式包管理器 > 為解決方案管理 NuGet 程式包。
圖 4:通過導航到工具 > NuGet 程式包管理器 > 在 Visual Studio 中為解決方案管理 NuGet 程式包來存取 NuGet 程式包管理器 -
**搜尋 IronPDF:**在打開的窗口中,點擊 瀏覽,並在搜尋框中鍵入 IronPDF。
圖 5:NuGet 程式包管理器 UI 顯示 IronPDF 搜索結果。 主要的 IronPDF 程式包(版本 2023.6.10)已被選中並準備好安裝,顯示了 6.31M 的下載數量。 -
**安裝 IronPDF:**在搜索結果中看到 IronPDF 後,點擊它。 確保右側面板中專案的複選框已被勾選,然後點擊 安裝。
在安裝過程中接受任何提示。
您還可以使用程式包管理器控制台進行安裝:
對於高級安裝選項,包括Docker 設置和Azure 部署,請查看IronPDF 安裝概述。
我如何構建使用者介面?
讓我們為我們的應用構建 UI。 MainPage.xaml 文件將有一個按鈕用於打開 PDF 和標簽用於顯示文件名和內容。
**打開 MainPage.xaml 文件:**這個文件包含主頁的佈局。 您可以在解決方案資源管理器的 Pages 資料夾下找到這個文件。
**定義佈局:**我們將使用一個 <ScrollView> 控件,當頁面內容無法完全裝下時,允許使用者滾動瀏覽。 在 ScrollView 中,我們將使用 <StackLayout> 來垂直堆疊我們的控件。 在 StackLayout 中,我們有三個 <Frame> 控件。 每個 Frame 用於保存我們頁面的一個不同部分,提供整潔有序的外觀。
**新增控件:**第一個 Frame 有一個 <VerticalStackLayout>,其內包含一個標籤和一個按鈕。 標籤顯示應用名稱,按鈕允許使用者打開 PDF 文件。Clicked 屬性被分配給方法 OpenAndReadFile,稍後在後面的程式碼中定義。
<VerticalStackLayout
Spacing="25"
Padding="30,0"
VerticalOptions="Center">
<Label
Text="IronPDF MAUI Application"
SemanticProperties.HeadingLevel="Level1"
SemanticProperties.Description="IronPDF MAUI Application"
FontSize="30"
HorizontalOptions="Center"
FontAttributes="Bold"
/>
<Button
x:Name="openFileBtn"
Text="Open PDF File"
SemanticProperties.Hint="Open PDF File"
Clicked="OpenAndReadFile"
HorizontalOptions="Center" />
</VerticalStackLayout>
第二個 Frame 使用 <HorizontalStackLayout>,配有兩個標籤:一個用於靜態文字,另一個名為 fileName 用於顯示選擇的文件。
<HorizontalStackLayout
Spacing="25"
Padding="30,0"
VerticalOptions="Center">
<Label
Text="Selected File Name: "
SemanticProperties.HeadingLevel="Level2"
SemanticProperties.Description="Selected File Name"
FontSize="18"
HorizontalOptions="Center"
FontAttributes="Bold"
/>
<Label
x:Name="fileName"
Text=""
SemanticProperties.HeadingLevel="Level3"
SemanticProperties.Description="Selected File Name"
FontSize="18"
HorizontalOptions="Center"
/>
</HorizontalStackLayout>
第三個 Frame 包含一個 <VerticalStackLayout>,配有兩個標籤:一個用於"PDF 內容",另一個名為 content 用於顯示 PDF 文字。
<VerticalStackLayout>
<Label
Text="PDF Content"
SemanticProperties.HeadingLevel="Level2"
FontSize="25"
FontAttributes="Bold"
HorizontalOptions="Center"
/>
<Label
x:Name="content"
FontSize="18"
HorizontalTextAlignment="Start"
/>
</VerticalStackLayout>
您完整的 MainPage.xaml 應該看起來像這樣:
<?xml version="1.0" encoding="utf-8" ?>
<ContentPage
xmlns="___PROTECTED_URL_46___"
xmlns:x="___PROTECTED_URL_47___"
x:Class="IronPDF_Read_and_View.MainPage">
<ScrollView>
<StackLayout>
<Frame>
<VerticalStackLayout
Spacing="25"
Padding="30,0"
VerticalOptions="Center">
<Label
Text="IronPDF MAUI Application"
SemanticProperties.HeadingLevel="Level1"
SemanticProperties.Description="IronPDF MAUI Application"
FontSize="30"
HorizontalOptions="Center"
FontAttributes="Bold"
/>
<Button
x:Name="openFileBtn"
Text="Open PDF File"
SemanticProperties.Hint="Open PDF File"
Clicked="OpenAndReadFile"
HorizontalOptions="Center" />
</VerticalStackLayout>
</Frame>
<Frame>
<HorizontalStackLayout
Spacing="25"
Padding="30,0"
VerticalOptions="Center">
<Label
Text="Selected File Name: "
SemanticProperties.HeadingLevel="Level2"
SemanticProperties.Description="Selected File Name"
FontSize="18"
HorizontalOptions="Center"
FontAttributes="Bold"
/>
<Label
x:Name="fileName"
Text=""
SemanticProperties.HeadingLevel="Level3"
SemanticProperties.Description="Selected File Name"
FontSize="18"
HorizontalOptions="Center"
/>
</HorizontalStackLayout>
</Frame>
<Frame>
<VerticalStackLayout>
<Label
Text="PDF Content"
SemanticProperties.HeadingLevel="Level2"
FontSize="25"
FontAttributes="Bold"
HorizontalOptions="Center"
/>
<Label
x:Name="content"
FontSize="18"
HorizontalTextAlignment="Start"
/>
</VerticalStackLayout>
</Frame>
</StackLayout>
</ScrollView>
</ContentPage>
當使用者點擊"打開 PDF 文件"時,它會觸發 OpenAndReadFile 方法。 fileName 和 content 標籤將分別顯示所選文件名和 PDF 內容。
對於複雜的 UI 佈局,IronPDF 支援直接在 MAUI 應用中將 XAML 轉換為 PDF。
在 xaml.cs 中包含哪些程式碼?
**打開 MainPage.xaml.cs:**在解決方案資源管理器的 Pages 資料夾下找到此文件。 這是新增我們方法的地方。
**新增 filePath 字段:**在 MainPage 類的頂部,宣告一個名為 filePath 的 string 字段。 我們將使用此字段來儲存所選文件的路徑。
string filePath = string.Empty;Dim filePath As String = String.Empty**初始化組件:**在 MainPage 構造函式中,調用 InitializeComponent 方法。 此方法會自動調用以初始化頁面及其控件。
public MainPage()
{
InitializeComponent();
}Public Sub New()
InitializeComponent()
End Sub**實現 OpenAndReadFile 方法:**此方法被標記為 async,因為我們將在其中使用 await 關鍵字。 FilePicker.PickAsync 方法用於開啟文件選擇器。 當使用者選擇一個文件時,文件名將被儲存在 fileName 標籤中,文件路徑在 filePath 字段。 使用 IronPDF 程式庫打開 PDF 文件並從中提取所有文字。 然後將提取的文字分配給內容標籤。
private async void OpenAndReadFile(object sender, EventArgs e)
{
FileResult result = await FilePicker.PickAsync();
fileName.Text = result.FileName;
filePath = result.FullPath;
IronPdf.License.LicenseKey = "Your-License-Key";
// Read PDF File
var document = PdfDocument.FromFile(filePath);
var pdfContent = document.ExtractAllText();
content.Text = pdfContent;
}Private Async Sub OpenAndReadFile(ByVal sender As Object, ByVal e As EventArgs)
Dim result As FileResult = Await FilePicker.PickAsync()
fileName.Text = result.FileName
filePath = result.FullPath
IronPdf.License.LicenseKey = "Your-License-Key"
' Read PDF File
Dim document = PdfDocument.FromFile(filePath)
Dim pdfContent = document.ExtractAllText()
content.Text = pdfContent
End Sub將 "Your-License-Key" 替換為您真實的 IronPDF 授權金鑰。 了解 使用 IronPDF 授權金鑰。
這是完整的程式碼:
using IronPdf;
public partial class MainPage : ContentPage
{
string filePath = string.Empty;
public MainPage()
{
InitializeComponent();
}
private async void OpenAndReadFile(object sender, EventArgs e)
{
FileResult result = await FilePicker.PickAsync();
fileName.Text = result.FileName;
filePath = result.FullPath;
IronPdf.License.LicenseKey = "Your-License-Key";
// Read PDF File
var document = PdfDocument.FromFile(filePath);
var pdfContent = document.ExtractAllText();
content.Text = pdfContent;
}
}Imports IronPdf
Partial Public Class MainPage
Inherits ContentPage
Private filePath As String = String.Empty
Public Sub New()
InitializeComponent()
End Sub
Private Async Sub OpenAndReadFile(ByVal sender As Object, ByVal e As EventArgs)
Dim result As FileResult = Await FilePicker.PickAsync()
fileName.Text = result.FileName
filePath = result.FullPath
IronPdf.License.LicenseKey = "Your-License-Key"
' Read PDF File
Dim document = PdfDocument.FromFile(filePath)
Dim pdfContent = document.ExtractAllText()
content.Text = pdfContent
End Sub
End ClassIronPDF 提供超出文字提取的附加功能。 您可以搜索和替換文字,提取圖片,處理PDF 表單,以及程式化地新增註釋。
我如何運行應用程式?
**啟動應用:**要運行應用,您可以按鍵盤上的 F5 或單擊 Visual Studio 工具欄頂部的綠色 '開始偵錯' 按鈕。 確保在 '開始偵錯' 按鈕旁邊的下拉選單中選擇了正確的目標裝置或模擬器。
**使用應用:**當應用啟動後,您將看到一個標題為" IronPDF MAUI 應用"的畫面和一個標籤為"打開 PDF 文件"的按鈕。
使用應用:您將看到一個畫面,上面有" IronPDF MAUI 應用"和"打開 PDF 文件"的按鈕。
**打開 PDF 文件:**點擊"打開 PDF 文件"按鈕。 這將打開一個文件選擇器,允許您瀏覽並從裝置或模擬器中選擇 PDF 文件。
**打開 PDF 文件:**點擊"打開 PDF 文件"以打開文件選擇器並從裝置中選擇 PDF。
**查看內容:**選擇 PDF 文件後,文件名將顯示在"選擇的文件名"下,所選 PDF 文件的內容將顯示在"PDF 內容"下。
查看內容:選擇 PDF 文件後,文件名顯示在"選定文件名"下,提取的文字顯示在"PDF 內容"下。
IronPDF MAUI 應用成功提取並顯示所選發票 PDF 文件的文字內容,展示了該程式庫在 .NET MAUI 桌面應用中的文字提取能力。
請注意,大型 PDF 可能需要幾秒鐘的時間來處理。 提取的文字格式可能與原始 PDF 佈局不完全匹配,因為 ExtractAllText 方法 提取的是嵌入的文字內容。 若需更多控制,請使用特定頁面的提取方法或操作PDF DOM 物件。
我們學到了什麼?
本教程展示了如何構建 .NET MAUI 應用來使用 IronPDF 提取和顯示 PDF 文字內容。 這顯示了 .NET MAUI 和 IronPDF 在 PDF 處理中的強大和多功能性。
超出文字提取之外,IronPDF 支援與 PDF 表單交互、拆分 PDF、將頁面光柵化為圖像、與 HTML 登錄表單進行身份驗證、定制頁眉和頁腳,以及支援 CSS 以實現像素完美 PDF。 您可以探索 在 MAUI 中查看 PDF、使用UTF-8 和國際語言,並從資料中生成 PDF 報告。
IronPDF 是一個商用產品,提供免費試用來測試它的功能。 如果您發現它對生產使用有幫助,授權從 $999 開始。 查看全面的 IronPDF 功能概述以了解更多關於這個強大的 PDF 處理程式庫的資訊。

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


