Open a PDF from Base64 data in MAUI

Nutrient MAUI SDK supports opening a document from a number of formats, including Base64 strings.

Introduction

To open a document, you need to add PDFView to your desired XAML. You’ll also need to assign a Name for interacting with it through code. In this example, PDFView is named PDFView:

<pspdfkit:PDFView x:Name="PDFView" Initialized="OnPDFViewInitialized"
License="{OnPlatform
Android={StaticResource AndroidLicenseKey},
iOS={StaticResource iOSLicenseKey},
MacCatalyst={StaticResource MacCatalystLicenseKey},
WinUI={StaticResource WindowsLicenseKey}}" />

The rest of the document opening process needs to be done after the PDFView control(opens in a new tab) is loaded. The easiest way to ensure it’s loaded is by using the PDFView.Initialized event as shown above. Alternatively, you can subscribe to it in code-behind as follows:

PDFView.Initialized += (sender, e) =>
{
// ...
};

If you don’t intend to open a document straight away and you know that PDFView will always be initialized, you can skip this step and open the document whenever it’s convenient.

Opening a document from a Base64 string

The following example code demonstrates how to open a document from a Base64 string:

string documentAsBase64String = /* document read as base64 string */;
try
{
var document = await PSPDFKitController.LoadDocumentFromBase64StringAsync(
documentAsBase64String, PSPDFKitController.CreateViewerConfiguration());
}
catch (Exception ex)
{
// Handle exception.
}

Trying it out in Catalog

If you don’t have a Base64 string handy and you want to quickly try out loading a document from a Base64 string, you can use this site(opens in a new tab) to convert a document to a Base64 string and then try loading a document in our Catalog app.