在 C# .NET 的 MAUI 中查看 PDF 文件

This article was translated from English: Does it need improvement?
Translated
View the article in English

IronPDF Viewer 橫幅

在現代跨平台開發的時代,為用戶提供直接在應用程式中查看 PDF 文件的能力不僅是一種便利,更是一種必要。通過 IronPDF Viewer,您可以將 PDF 查看功能嵌入到您的 MAUI 應用程式中。

在本文中,我們將學習如何在 MAUI 應用程式中整合 IronPDF Viewer,從而讓用戶能夠查看、保存和打印 PDF。


概述


下載並安裝 IronPDF Viewer 庫

Visual Studio - NuGet 套件管理員

在 Visual Studio 中,右鍵點擊您的專案解決方案總管,並選擇 管理 NuGet 套件...,從那裡您可以搜索 IronPdf.Viewer.Maui 並將最新版本安裝到您的解決方案中。替代方法是,您可以通過導航至 工具 > NuGet 套件管理員 > 套件管理控制台 打開 NuGet 套件管理控制台,並輸入以下命令:

Install-Package IronPdf.Viewer.Maui

<div class="col-sm-6>

將 IronPDF Viewer 集成到 MAUI 應用程式中

在以下幾個部分中,我們將演示如何將 IronPDF Viewer 集成到預設的 MAUI 應用程式中。

設置

在將 IronPDF Viewer 添加到您的 MAUI 項目之前,請先確保它不針對 iOS 和 Android 平台。您可以通過右鍵點擊項目文件並選擇 屬性 來檢查這一點。如果 目標是 iOS 平台目標是 Android 平台 的複選框還沒有取消選中,那麼請取消選中下圖中畫線的複選框。為了成功實施此更改,您可能需要在取消選中後保存項目並重新啟動 Visual Studio。

屬性畫面

在取消鎖定 iOS 和 Android 平台後,前往你的 MauiProgram.cs 檔案,並新增以下程式碼來初始化檢視器:

:path=/static-assets/pdf/content-code-examples/tutorials/pdf-viewing-1.cs
using IronPdf.Viewer.Maui;

public static class MauiProgram
{
    public static MauiApp CreateMauiApp()
    {
        var builder = MauiApp.CreateBuilder();
        builder
            .UseMauiApp<App>()
            // other configuration options ...
            .ConfigureIronPdfView(); // configure the viewer on app start-up

        return builder.Build();
    }
}
Imports IronPdf.Viewer.Maui

Public Module MauiProgram
	Public Function CreateMauiApp() As MauiApp
		Dim builder = MauiApp.CreateBuilder()
		builder.UseMauiApp(Of App)().ConfigureIronPdfView() ' configure the viewer on app start-up

		Return builder.Build()
	End Function
End Module
VB   C#

預設情況下,IronPDF Viewer 會在視圖的右下角顯示橫幅。要移除此視圖,請添加您的 IronPDF (或 Iron Suite) 將授權密鑰配置到 ConfigureIronPdfView 像這樣:

:path=/static-assets/pdf/content-code-examples/tutorials/pdf-viewing-2.cs
.ConfigureIronPdfView("YOUR-LICENSE-KEY");
IRON VB CONVERTER ERROR developers@ironsoftware.com
VB   C#

添加 PDF 查看頁面

在本節中,我們將學習如何創建一個 PDF 查看頁面,集成 IronPDF Viewer,並在 MAUI 應用中為其創建選項卡。我們將展示如何使用 XAML 和 C# 的 ContentPage 來完成這個操作。

步驟

  1. 透過右鍵點擊您的專案,然後導航至 新增 > 新增項目... 來在專案中新增一個頁面

    新增項目

  2. 導航至 .NET MAUI 部分。要創建 XAML 頁面,請選擇 .NET MAUI ContentPage (XAML). 對於 C# 文件,選擇 .NET MAUI ContentPage (C#). 給你的檔案命名為 PdfViewerPage,然後點擊 新增

    .NET MAUI `ContentPage`

在 XAML 檔案中,新增以下程式碼並儲存:

<?xml version="1.0" encoding="utf-8" ?>
<ContentPage ...
    xmlns:ipv="clr-namespace:IronPdf.Viewer.Maui;assembly=IronPdf.Viewer.Maui"
    ...>
    <ipv:IronPdfView x:Name="pdfView"/>
</ContentPage>
XML

如果您創建了 C# ContentPage,請添加以下代碼並保存:

:path=/static-assets/pdf/content-code-examples/tutorials/pdf-viewing-3.cs
using IronPdf.Viewer.Maui;

public class MainPage : ContentPage
{
    private readonly IronPdfView pdfView;

    public MainPage()
    {
        InitializeComponent();

        this.pdfView = new IronPdfView { Options = IronPdfViewOptions.All };

        Content = this.pdfView;
    }
}
Imports IronPdf.Viewer.Maui

Public Class MainPage
	Inherits ContentPage

	Private ReadOnly pdfView As IronPdfView

	Public Sub New()
		InitializeComponent()

		Me.pdfView = New IronPdfView With {.Options = IronPdfViewOptions.All}

		Content = Me.pdfView
	End Sub
End Class
VB   C#
  1. 在你的 AppShell.xaml 文件中,添加以下內容:
<?xml version="1.0" encoding="UTF-8" ?>
<Shell ...
    xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
    xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
    ...>
  <TabBar x:Name="AppTabBar">
      <Tab Title="Home">
        <ShellContent ContentTemplate="{DataTemplate local:MainPage}" Route="MainPage"/>
      </Tab>
      <Tab Title="PDF Viewer">
        <ShellContent ContentTemplate="{DataTemplate local:PdfViewerPage}" Route="PDFViewer"/>
    </Tab>
  </TabBar>
</Shell>
XML
  1. 儲存您的專案,然後建構並執行。您應該會看到左上角有標籤,如下所示,點擊「PDF Viewer」標籤應會開啟IronPDF Viewer。

IronPDF Viewer 預設

啟動時載入 PDF

在應用程式啟動時,IronPDF Viewer 將預設提示使用者開啟 PDF。亦可在啟動時自動開啟 PDF。有三種方法可以在啟動時載入 PDF:通過檔案名、通過位元組陣列和通過流。

根據檔名載入

要根據檔名載入 PDF,你可以在 XAML 文件中的 IronPdfView 標籤裡指定 PDF 文件的來源。以下是一個示例:

<?xml version="1.0" encoding="utf-8" ?>
<ContentPage ...
    xmlns:ipv="clr-namespace:IronPdf.Viewer.Maui;assembly=IronPdf.Viewer.Maui"
    ...>
    <ipv:IronPdfView Source="C:/path/to/my/example.pdf" />
</ContentPage>
XML

或者,你可以使用 C# 的 ContentPage 中的 IronPdfViewSource.FromFile 方法透過檔案名稱加載 PDF:

:path=/static-assets/pdf/content-code-examples/tutorials/pdf-viewing-4.cs
// We assume an IronPdfView instance is created previously called pdfView
pdfView.Source = IronPdfViewSource.FromFile("C:/path/to/my/example.pdf");
' We assume an IronPdfView instance is created previously called pdfView
pdfView.Source = IronPdfViewSource.FromFile("C:/path/to/my/example.pdf")
VB   C#

通過字節數組加載

在某些情況下,可能需要加載 PDF 的字節數組。這在 XAML 中是不可能的,但在 C# 中是可能的。您只需使用 IronPdfViewSource.FromBytes 方法即可實現。以下是如何使用此方法的示例:

:path=/static-assets/pdf/content-code-examples/tutorials/pdf-viewing-5.cs
pdfView.Source = IronPdfViewSource.FromBytes(File.ReadAllBytes("~/Downloads/example.pdf"));
pdfView.Source = IronPdfViewSource.FromBytes(File.ReadAllBytes("~/Downloads/example.pdf"))
VB   C#

通過流加載

同樣的,在某些使用案例中,通過流加載 PDF 可能更為理想。這在 XAML 中是不可能的,但在 C# 中是可能的。你可以通過簡單地使用 IronPdfViewSource.FromStream 方法來實現。以下是如何使用此方法的示例:

:path=/static-assets/pdf/content-code-examples/tutorials/pdf-viewing-6.cs
pdfView.Source = IronPdfViewSource.FromStream(File.OpenRead("~/Downloads/example.pdf"));
pdfView.Source = IronPdfViewSource.FromStream(File.OpenRead("~/Downloads/example.pdf"))
VB   C#

配置工具欄

使用 IronPDF Viewer,您可以選擇在工具欄中顯示哪些選項。可用的選項有:

  • 縮略圖視圖
  • 文件名顯示
  • 文字搜索
  • 頁碼導航
  • 縮放
  • 適合寬度
  • 適合高度
  • 順時針旋轉
  • 逆時針旋轉
  • 打開檔案
  • 下載檔案
  • 列印檔案
  • 顯示註釋
  • 雙頁視圖

默認情況下,IronPDF Viewer 會顯示如下所示的工具欄:

預設工具列

在預設視圖中,檔案名稱顯示、文字搜尋和逆時針旋轉選項都被禁用。要顯示所有內容,請將XAML中IronPdfView標籤的Option參數設為All

<?xml version="1.0" encoding="utf-8" ?>
<ContentPage ...
    xmlns:ipv="clr-namespace:IronPdf.Viewer.Maui;assembly=IronPdf.Viewer.Maui"
    ...>
    <ipv:IronPdfView x:Name="pdfView" Options="All"/>
</ContentPage>
XML

或者,你可以在 C# 中實現相同的功能:

:path=/static-assets/pdf/content-code-examples/tutorials/pdf-viewing-7.cs
pdfView.Options = IronPdfViewOptions.All;
pdfView.Options = IronPdfViewOptions.All
VB   C#

將顯示以下內容:

所有工具栏

如果您不想顯示任何內容,請將選項設置為 None。如果 Options 設置為此,工具列將不會出現:

沒有工具欄

您可以選擇希望顯示的具體選項。例如,如果您只想顯示縮略圖和打開文件選項,可以像下面這樣在XAML中修改 IronPdfViewOptions 參數:

<ipv:IronPdfView x:Name="pdfView" Options="Thumbs, Open"/>
XML

同樣地,在 C# 中:

:path=/static-assets/pdf/content-code-examples/tutorials/pdf-viewing-8.cs
pdfView.Options = IronPdfViewOptions.Thumbs | IronPdfViewOptions.Open;
pdfView.Options = IronPdfViewOptions.Thumbs Or IronPdfViewOptions.Open
VB   C#

將顯示以下內容:

帶有縮略圖和打開文件選項的工具欄

結論

在本教程中,我們學習了如何將IronPDF Viewer整合到MAUI應用中,以及如何自定義其工具欄以滿足您的需求。

這個查看器是我們IronPDF產品的一部分。如果您想提出功能請求或對IronPDF Viewer有任何一般問題 (或 IronPDF),請 聯絡我們的支援團隊我們將非常樂意協助您。