NET MAUI で XAML を PDF に変換する方法

C# MAUI での XAML から PDF への変換

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

IronPDF を使用すると、.NET MAUI アプリケーションにおいて、わずか数行のコードで XAML ページを PDF に変換できます。 RenderContentPageToPdf メソッドを使用することで、MAUI アプリケーションの UI を、デスクトップおよび Web プラットフォーム向けの Professional PDF 文書に変換できます。

.NET MAUI (Multi-platform App UI) は、ネイティブデバイスアプリケーションを構築するためのクロスプラットフォームフレームワークです。 これは Xamarin.Forms から派生しており、統合された .NET 6 エコシステムの一部です。 これにより、.NETアプリケーション開発者は、共通のUIコンポーネントと単一のコードベースを使用して、デスクトップ、Web、およびモバイルプラットフォーム向けのアプリケーションを作成できます。 MAUI を使用すれば、必要に応じてプラットフォーム固有のコードやリソースを追加することも可能です。

IronPDF を使用すると、MAUI ページから PDF ドキュメントを生成できるため、これらのアプリケーション内で PDF ファイルやページの作成が可能になります。 Windows でも macOS でも、IronPDF は一貫した PDF 生成機能を提供します。 ただし、IronPDFは現在、モバイルプラットフォームには対応していません。

MAUI アプリケーションにおける PDF 生成プロセスでは、IronPDF の Chrome レンダリングエンジンを使用しており、XAML レイアウトが PDF 形式に正確に変換されることが保証されます。 これにより、レポートや請求書、あるいはMAUIアプリケーションのユーザーインターフェースの視覚的な整合性を維持する必要があるあらゆるドキュメントの生成に最適です。

クイックスタート:.NET MAUIでIronPDFを使用してXAMLをPDFに変換する

IronPDF を使用して、.NET MAUI で XAML ページを PDF に変換します。 わずか数行のコードで、MAUIアプリケーションのコンテンツをProfessional品質のPDFドキュメントに変換できます。 このガイドでは、IronPDFの効率的なレンダリング機能を活用し、すぐに使い始められる簡単な例を紹介します。 デスクトップおよびWebアプリケーションへのPDF生成機能をスムーズに統合する方法をご覧ください。

var pdf = new IronPdf.ChromePdfRenderer().RenderContentPageToPdf<MainPage,App>().SaveAs("page.pdf");
var pdf = new IronPdf.ChromePdfRenderer().RenderContentPageToPdf<MainPage,App>().SaveAs("page.pdf");
$vbLabelText   $csharpLabel

最小限のワークフロー(5ステップ)

  1. MAUI用IronPDF C#ライブラリをダウンロードする
  2. MainPage.xaml.cs ファイルを変更し、RenderContentPageToPdf メソッドを使用するようにします
  3. MainPage.xaml ファイル内のボタンを更新し、新しい関数を呼び出すようにしてください
  4. PDFドキュメントをエクスポートするか、MAUIアプリ内のPDFビューアで表示する
  5. すぐに始められるよう、MAUIのサンプルプロジェクトをダウンロードしてください

MAUI 環境で IronPDF を使用するには、どの拡張パッケージが必要ですか?

IronPdf.Extensions.Maui パッケージは、IronPdf メインパッケージの拡張版です。 これは拡張機能であるため、MAUIアプリケーションのコンテンツページをPDFドキュメントとして出力するには、IronPdfメインパッケージが依然として必要です。 この拡張パッケージは、特に MAUI の XAML ベースの UI フレームワークと IronPDF の PDF 生成機能との間のギャップを埋めるものです。

この拡張パッケージは、MAUI ContentPage オブジェクトを、PDFとしてレンダリング可能なHTMLに変換します。 MAUIページのレイアウトやスタイルを維持しつつ、カスタム余白カスタム用紙サイズPDF圧縮など、IronPDFのすべての高度な機能を利用できます。

Install-Package IronPdf.Extensions.Maui
Install-Package IronPdf.Extensions.Maui
SHELL

拡張パッケージをインストールすると、RenderContentPageToPdf メソッドが利用可能になります。このメソッドが、MAUI ページを変換するための鍵となります。 この方法はパフォーマンスに最適化されており、変換プロセス中もXAMLレイアウトの視覚的な忠実度を維持します。

MAUI ページを PDF として出力するにはどうすればよいですか?

どのコードファイルを最初に修正すべきですか?

  • MainPage.xaml ファイルから、そのコードファイルである MainPage.xaml.cs へ移動します。
  • OnCounterClicked という名前の関数を PrintToPdf に変更してください。 以下のコードサンプルを使用してください。

MAUIページをPDFに変換するには、RenderContentPageToPdfメソッドを使用してください。 このメソッドには、ChromePdfRenderer クラスをインスタンス化することでアクセスできます。 このメソッドを実行すると PdfDocument オブジェクトが返されます。このオブジェクトは、SaveAs メソッドを使用するか、MAUIでのPDF表示機能に対応したPDFビューアを使用して保存または表示できます。

ChromePdfRenderer クラスは、その RenderingOptions プロパティを通じて、幅広いカスタマイズオプションを提供します。 ページの余白や用紙の向きを設定したり、JavaScriptの実行を有効にしたりするなど、さまざまな設定が可能です。 これらのオプションにより、PDF出力はお客様の要件に完全に合致します。

:path=/static-assets/pdf/content-code-examples/how-to/xaml-to-pdf-maui-mainpage-xaml-cs.cs
using IronPdf.Extensions.Maui;

namespace mauiSample;

public partial class MainPage : ContentPage
{
    public MainPage()
    {
        InitializeComponent();
    }

    private void PrintToPdf(object sender, EventArgs e)
    {
        ChromePdfRenderer renderer = new ChromePdfRenderer();

        // Apply HTML header
        renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter()
        {
            HtmlFragment = "<h1>Header</h1>",
        };

        // Render PDF from Maui Page
        PdfDocument pdf = renderer.RenderContentPageToPdf<MainPage, App>().Result;

        pdf.SaveAs(@"C:\Users\lyty1\Downloads\contentPageToPdf.pdf");
    }
}
Imports IronPdf.Extensions.Maui

Namespace mauiSample

	Partial Public Class MainPage
		Inherits ContentPage

		Public Sub New()
			InitializeComponent()
		End Sub

		Private Sub PrintToPdf(ByVal sender As Object, ByVal e As EventArgs)
			Dim renderer As New ChromePdfRenderer()

			' Apply HTML header
			renderer.RenderingOptions.HtmlHeader = New HtmlHeaderFooter() With {.HtmlFragment = "<h1>Header</h1>"}

			' Render PDF from Maui Page
			Dim pdf As PdfDocument = renderer.RenderContentPageToPdf(Of MainPage, App)().Result

			pdf.SaveAs("C:\Users\lyty1\Downloads\contentPageToPdf.pdf")
		End Sub
	End Class
End Namespace
$vbLabelText   $csharpLabel

さらに、お気づきかもしれませんが、XAMLからのレンダリングにより、RenderingOptionsで利用可能なすべての機能に完全にアクセスできるようになります。 これには、テキストおよびHTMLのヘッダーとフッターの追加も含まれます。 また、画像へのスタンプ押印やページ番号の追加、さらにはページのサイズやレイアウトのカスタマイズも可能です。 この方法を使用してPDFを作成する場合、これらのオプションはすべて利用可能です。

RenderContentPageToPdf メソッドはデフォルトで非同期であり、Task<PdfDocument> を返します。 これにより、ノンブロッキングでのPDF生成が可能となり、複雑なレイアウトを扱う場合や、複数のPDFを同時に生成する場合に特に有用です。 この手法では、XAMLの視覚要素をPDF形式に自動的に変換し、色、フォント、レイアウト構造を保持します。

XAML ファイルにはどのような変更が必要ですか?

MainPage.xaml ファイル内で、デフォルトの OnCounterClicked 関数を新しい PrintToPdf 関数に置き換えてください。 このボタンをクリックすると、PrintToPdfメソッドが実行され、PDFが作成されます。 この簡単な変更により、最小限のコード変更でMAUIアプリケーションをPDF生成ツールに変えることができます。

<Button
    x:Name="PrintToPdfBtn"
    Text="Print to pdf"
    SemanticProperties.Hint="Click to print page as PDF"
    Clicked="PrintToPdf"
    HorizontalOptions="Center" />
<Button
    x:Name="PrintToPdfBtn"
    Text="Print to pdf"
    SemanticProperties.Hint="Click to print page as PDF"
    Clicked="PrintToPdf"
    HorizontalOptions="Center" />
XML

このボタンは、標準的な MAUI スタイリングプロパティを使用してスタイルを設定でき、PDF の生成中に読み込みインジケーターなどの視覚的なフィードバックを追加することも可能です。 これにより、PDF作成プロセスにおけるスムーズなユーザー体験が保証されます。

出力されるPDFはどのようなものですか?

PDFファイルを保存する前に、PdfDocumentで利用可能なメソッドを使用して、さらに変更を加えることができます。 ページを結合したり、分割したり、回転させたりすることができます。 また、PDFに注釈ブックマークを追加することもできます。 さらに、作成者、タイトル、キーワードなどのPDFメタデータを設定することで、ドキュメントの整理や検索性を向上させることができます。

生成されたPDFは、フォント、色、レイアウトの制約を含め、MAUIページの視覚的な階層構造とスタイルを維持します。 これにより、アプリケーションの画面の印刷用バージョンを作成したり、アプリのUIに基づいてレポートを生成したりするのに最適です。

MAUIの完全なサンプルプロジェクトはどこからダウンロードできますか?

このガイドの完全なコードをダウンロードできます。ZIPファイル形式で提供されており、Visual Studioで.NET MAUIアプリプロジェクトとして開くことができます。 サンプルプロジェクトには必要な依存関係がすべて含まれており、MAUIアプリケーションにIronPDFを統合するためのベストプラクティスを示しています。

サンプルプロジェクトは、WindowsおよびmacOSのデスクトッププラットフォームの両方で動作するように構成されており、MAUIとIronPDFの両方のクロスプラットフォーム機能を紹介しています。 これには、さまざまなPDF生成シナリオの例が含まれており、異なるページレイアウトやコンテンツタイプへの対応方法を実演しています。

MAUI サンプルプロジェクトの完全版をダウンロード

こちらのチュートリアルページで、さらなる可能性を探ってみてください:PDFの変換。 また、Web 配布用に生成した PDF の品質を向上させるための PDF 圧縮に関するガイドや、Web ベースの PDF 生成シナリオに向けた Blazor Servers での PDF 作成方法についても、ぜひご覧ください。

よくある質問

.NET MAUIとは何か、PDF生成とどのように関係するのか。

.NET MAUI (Multi-platform App UI) はXamarin.Formsから拡張されたネイティブデバイスアプリケーションを構築するためのクロスプラットフォームフレームワークです。IronPDFは.NET MAUIアプリケーションと統合し、RenderContentPageToPdfメソッドを使用してXAMLページからPDF生成を可能にし、開発者がMAUIアプリケーションのUIをプロフェッショナルなPDFドキュメントに変換できるようにします。

MAUIアプリケーションでのPDF生成に対応しているプラットフォームは?

IronPDFは現在、デスクトップ(WindowsとmacOS)とウェブプラットフォームのMAUIアプリケーションでのPDF生成をサポートしています。モバイルプラットフォームは現在IronPDFによるMAUI PDF生成には対応していません。

MAUIでXAMLをPDFに変換するには、どの拡張パッケージが必要ですか?

メインのIronPDFパッケージとともにIronPdf.Extensions.Mauiパッケージが必要です。この拡張パッケージは特にMAUIのXAMLベースのUIフレームワークとIronPDFのPDF生成機能を橋渡しし、MAUIのContentPageオブジェクトをPDFとしてレンダリング可能なHTMLに変換します。

C#でMAUI XAMLページをPDFに変換するには?

IronPDFでMAUI XAMLページをPDFに変換するのは簡単です。たった1行のコードでRenderContentPageToPdfメソッドを使うことができます: var pdf = new IronPdf.ChromePdfRenderer().RenderContentPageToPdf().SaveAs('page.pdf').これはIronPDFのChromeレンダリングエンジンを活用し、XAMLレイアウトをPDFフォーマットに正確に変換します。

MAUIアプリケーションにPDF生成を実装するための基本的なステップは何ですか?

基本的なワークフロー1) MAUI用IronPDF C#ライブラリのダウンロード、2) RenderContentPageToPdfメソッドを使用するためにMainPage.xaml.csファイルの修正、3) 関数をトリガーするためにMainPage.xamlのボタンの更新、4) PDFドキュメントのエクスポートまたはMAUIアプリでの表示、5) クイックスタートのためにIronPDFのサンプルMAUIプロジェクトのダウンロード。

PDF変換プロセスで使用するレンダリングエンジンは何ですか?

IronPDFはMAUIアプリケーションのPDF生成処理にChromeレンダリングエンジンを使用しています。これにより、MAUIアプリケーションのユーザーインターフェースの視覚的整合性を保ちながら、XAMLレイアウトを正確にPDF形式に変換することができます。

カーティス・チャウ
テクニカルライター

Curtis Chauは、カールトン大学でコンピュータサイエンスの学士号を取得し、Node.js、TypeScript、JavaScript、およびReactに精通したフロントエンド開発を専門としています。直感的で美しいユーザーインターフェースを作成することに情熱を持ち、Curtisは現代のフレームワークを用いた開発や、構造の良い視覚的に魅力的なマニュアルの作成を楽しんでいます。

開発以外にも、CurtisはIoT(Internet of Things)への強い関心を持ち、ハードウェアとソフトウェアの統合方法を模索しています。余暇には、ゲームをしたりDiscordボットを作成したりして、技術に対する愛情と創造性を組み合わせています。

準備はできましたか?
Nuget ダウンロード 19,014,616 | バージョン: 2026.5 just released
Still Scrolling Icon

まだスクロールしていますか?

すぐに証拠が欲しいですか? PM > Install-Package IronPdf
サンプルを実行するHTML が PDF に変換されるのを確認します。