Ir para o conteúdo do rodapé
USANDO O IRONPDF
Como visualizar arquivos PDF no .NET Maui

Criando um arquivo PDF em .NET MAUI usando IronPDF

A interface de usuário de aplicativos multiplataforma .NET (.NET MAUI) é uma estrutura multiplataforma para a criação de aplicativos nativos para dispositivos móveis e desktops com C# e XAML. Você pode usar o .NET MAUI para operar em Android, iOS, macOS e Windows usando uma única base de código. O .NET MAUI é de código aberto e representa uma melhoria em relação ao Xamarin Forms. Os controles da interface do usuário foram reescritos do zero para otimizar o desempenho e a extensibilidade. Além disso, expandiu-se da plataforma móvel para incluir casos de uso em computadores. Se você já usou o Xamarin Forms para criar interfaces de usuário multiplataforma, vai perceber que o framework .NET MAUI tem muito em comum com ele.

No entanto, existem algumas diferenças. É possível criar aplicativos multiplataforma com o framework .NET MAUI usando um único projeto, mas você pode adicionar código e recursos específicos da plataforma, se necessário. Um dos principais objetivos do .NET MAUI é permitir que você escreva o máximo possível da lógica do seu aplicativo e do layout da interface do usuário em uma única base de código. O .NET MAUI estará disponível para todas as plataformas e será compatível com os padrões MVVM e XAML existentes.

O .NET MAUI permite que os desenvolvedores trabalhem em diversas plataformas, como desenvolvimento para dispositivos móveis e plataformas Windows.

Funcionalidades do IronPDF

O IronPDF é um poderoso conversor de PDF capaz de lidar com praticamente qualquer tarefa que um navegador possa executar. A biblioteca .NET para desenvolvedores facilita a criação, leitura e manipulação de arquivos PDF. O IronPDF utiliza o mecanismo do Google Chrome para converter arquivos HTML em PDF. Entre outras tecnologias web, o IronPDF suporta HTML, ASPX, conversão de Razor Pages para PDF com o IronPDF e MVC View. O IronPDF é compatível com aplicativos Microsoft .NET (tanto aplicativos Web ASP.NET quanto aplicativos tradicionais do Windows). O IronPDF também pode ser usado para criar documentos PDF com aparência profissional.

O IronPDF pode criar arquivos PDF a partir de arquivos HTML com JavaScript e CSS, contendo arquivos JavaScript, CSS e imagens.

Com o IronPDF, você não só pode converter arquivos HTML para PDF , como também arquivos de imagem para PDF .

O IronPDF pode ajudar a criar documentos PDF interativos, preencher e enviar formulários interativos com o IronPDF , mesclar e dividir documentos PDF , extrair texto e imagens de documentos PDF, pesquisar texto em documentos PDF, rasterizar páginas PDF em imagens, converter PDF para HTML e imprimir documentos PDF usando o IronPrint .

O IronPDF pode gerar um documento a partir de uma URL. Para login em HTML usando o IronPDF para formulários de login , também é possível utilizar credenciais de login de rede personalizadas, agentes de usuário, proxies, cookies, cabeçalhos HTTP e variáveis ​​de formulário.

IronPDF é uma biblioteca capaz de ler e preencher documentos PDF, além de extrair imagens desses documentos. Permite adicionar cabeçalhos e rodapés a arquivos PDF , texto, fotos, marcadores para facilitar a navegação , marcas d'água e muito mais aos documentos. Também nos permite unir e dividir páginas em um documento novo ou existente. O IronPDF é capaz de converter documentos em objetos PDF sem usar um visualizador Acrobat. Também é possível converter um arquivo CSS em um documento PDF e arquivos de mídia CSS podem ser convertidos em documentos.

Criando um novo projeto no Visual Studio

Primeiramente, crie um projeto usando tanto o Visual Studio Code quanto o Visual Studio. Ao usar o Visual Studio Code, é necessário utilizar a ferramenta de linha de comando para instalar o modelo de tipo de projeto.

Abra o software Microsoft Visual Studio e acesse o menu Arquivo. Selecione "novo projeto" e, na janela de novo projeto, selecione "Aplicativo .NET MAUI ". Este artigo usará um aplicativo .NET MAUI para gerar documentos PDF e salvá-los em um local adequado.

Criando um arquivo PDF no .NET MAUI usando o IronPDF, Figura 1: Criar um novo projeto no Visual Studio Crie um novo projeto no Visual Studio.

Insira o nome do projeto e selecione o caminho do arquivo na caixa de texto apropriada. Em seguida, clique no botão Criar , como na captura de tela abaixo.

Criando um arquivo PDF no .NET MAUI usando o IronPDF, Figura 2: Configurar o projeto Configure o projeto

O projeto do Visual Studio agora irá gerar a estrutura para o aplicativo selecionado, seguindo a plataforma .NET MAUI App. O arquivo MainPage.cs será aberto para adicionar código e compilar/executar o aplicativo.

Criando um arquivo PDF no .NET MAUI usando o IronPDF, Figura 3: Adicionando código ao arquivo MainPage.cs Adicionando código ao arquivo MainPage.cs

Em seguida, instale a biblioteca para testar o código.

Instale a biblioteca IronPDF.

A biblioteca IronPDF pode ser baixada e instalada de quatro maneiras.

Estes são:

  • Utilizando o Visual Studio.
  • Utilizando a linha de comando do Visual Studio.
  • Download direto do site NuGet .
  • Download direto do site IronPDF .

Usando o Visual Studio

O software Visual Studio oferece a opção NuGet Package Manager para instalar o pacote diretamente na solução. A captura de tela abaixo mostra como abrir o Gerenciador de Pacotes NuGet .

Criando um arquivo PDF no .NET MAUI usando o IronPDF, Figura 4: Navegando usando a interface do Gerenciador de Pacotes NuGet Acesse a interface do usuário do Gerenciador de Pacotes NuGet.

Isso fornece a caixa de pesquisa para exibir a lista de pacotes do site NuGet . No Gerenciador de Pacotes NuGet , pesquise pela palavra-chave "IronPDF", como na captura de tela abaixo.

Criando um arquivo PDF no .NET MAUI usando o IronPDF, Figura 5: Selecionando o pacote IronPDF da interface do usuário do Gerenciador de Pacotes NuGet Pacote IronPDF da interface do gerenciador de pacotes NuGet

Na imagem acima, estão listados os itens de pesquisa relacionados; selecione a primeira opção para instalar o pacote na solução. Ele será instalado em todas as plataformas de aplicativos .NET MAUI , como Android, iOS e Windows.

Usando a linha de comando do Visual Studio

No Visual Studio, acesse Ferramentas > Gerenciador de Pacotes NuGet > Console do Gerenciador de Pacotes.

Insira a seguinte linha na guia Console do Gerenciador de Pacotes:

Install-Package IronPdf

Agora, o pacote será baixado/instalado em todas as plataformas .NET MAUI do projeto atual e estará pronto para uso.

Criando um arquivo PDF no .NET MAUI usando o IronPDF, Figura 6: Instale o pacote no Console do Gerenciador de Pacotes Instale o pacote no Console do Gerenciador de Pacotes.

Download direto do site do NuGet

A terceira maneira é baixar o pacote NuGet diretamente do site deles acessando este IronPDF NuGet repository page .

  • Selecione a opção de pacote de download no menu à direita.
  • Clique duas vezes no pacote baixado. Será instalado automaticamente.
  • Recarregue a solução e o pacote deverá estar utilizável no seu projeto.

Download direto do site da IronPDF

Baixe o pacote ZIP mais recente do IronPDF diretamente do site deles. Após o download, siga os passos abaixo para adicionar o pacote ao seu projeto.

  • Clique com o botão direito do mouse na opção Dependências do projeto na janela da solução.
  • Selecione a plataforma específica, depois selecione as opções de referência e navegue até o local onde a referência foi baixada.
  • Clique em OK para adicionar a referência.

Você também precisará adicionar referências a todas as plataformas compatíveis com .NET MAUI.

Crie PDFs em um aplicativo .NET MAUI usando o IronPDF.

Quando um projeto é criado, um arquivo chamado MainPage.xaml é gerado automaticamente. É aqui que você deve inserir a interface do usuário do aplicativo .NET MAUI .

Siga o código abaixo.

<?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
             x:Class="MAUI_PDF.MainPage"
            >

    <ScrollView>
        <VerticalStackLayout
            Spacing="25"
            Padding="30,0"
            VerticalOptions="Center">

            <Image
                Source="dotnet_bot.png"
                SemanticProperties.Description="Cute .NET bot waving hi to you!"
                HeightRequest="200"
                HorizontalOptions="Center" />

            <Label
                Text="Welcome to IronPDF!"
                SemanticProperties.HeadingLevel="Level1"
                FontSize="32"
                HorizontalOptions="Center" />

            <Button
                x:Name="PdfBtn"
                Text="Click me to generate PDF"
                SemanticProperties.Hint="Click button to generate PDF"
                Clicked="GeneratePDF"
                HorizontalOptions="Center" />
        </VerticalStackLayout>
    </ScrollView>

</ContentPage>
<?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
             x:Class="MAUI_PDF.MainPage"
            >

    <ScrollView>
        <VerticalStackLayout
            Spacing="25"
            Padding="30,0"
            VerticalOptions="Center">

            <Image
                Source="dotnet_bot.png"
                SemanticProperties.Description="Cute .NET bot waving hi to you!"
                HeightRequest="200"
                HorizontalOptions="Center" />

            <Label
                Text="Welcome to IronPDF!"
                SemanticProperties.HeadingLevel="Level1"
                FontSize="32"
                HorizontalOptions="Center" />

            <Button
                x:Name="PdfBtn"
                Text="Click me to generate PDF"
                SemanticProperties.Hint="Click button to generate PDF"
                Clicked="GeneratePDF"
                HorizontalOptions="Center" />
        </VerticalStackLayout>
    </ScrollView>

</ContentPage>
XML

Após adicionar o código acima ao arquivo MainPage.xaml, abra o arquivo MainPage.xaml.cs e inclua o seguinte método dentro da classe MainPage:

private void GeneratePDF(object sender, EventArgs e)
{
    ChromePdfRenderer renderer = new ChromePdfRenderer();
    var doc = renderer.RenderHtmlAsPdf("<h1>Hello IronPDF!</h1> <p>I'm using IronPDF MAUI!</p>");

    // Saves the memory stream as file.
    SaveService saveService = new SaveService();
    saveService.SaveAndView("IronPDF HTML string.pdf", "application/pdf", doc.Stream);
}
private void GeneratePDF(object sender, EventArgs e)
{
    ChromePdfRenderer renderer = new ChromePdfRenderer();
    var doc = renderer.RenderHtmlAsPdf("<h1>Hello IronPDF!</h1> <p>I'm using IronPDF MAUI!</p>");

    // Saves the memory stream as file.
    SaveService saveService = new SaveService();
    saveService.SaveAndView("IronPDF HTML string.pdf", "application/pdf", doc.Stream);
}
Private Sub GeneratePDF(ByVal sender As Object, ByVal e As EventArgs)
	Dim renderer As New ChromePdfRenderer()
	Dim doc = renderer.RenderHtmlAsPdf("<h1>Hello IronPDF!</h1> <p>I'm using IronPDF MAUI!</p>")

	' Saves the memory stream as file.
	Dim saveService As New SaveService()
	saveService.SaveAndView("IronPDF HTML string.pdf", "application/pdf", doc.Stream)
End Sub
$vbLabelText   $csharpLabel

O método GeneratePDF gera um novo documento PDF contendo o texto "Olá, IronPDF!..." e o salva no computador do usuário em um local especificado.

No método acima, um novo objeto ChromePdfRenderer é criado e invoca o método RenderHtmlAsPdf para produzir um novo documento PDF contendo as palavras "Olá IronPDF! ..." de uma sequência de marcação HTML. Em seguida, a tarefa de salvar o arquivo no dispositivo do usuário será delegada a uma classe separada, chamada SaveService. Essa classe será criada na próxima etapa.

O arquivo completo MainPage.xaml.cs está disponível abaixo. Certifique-se de que o conteúdo do arquivo corresponde ao que é mostrado abaixo antes de prosseguir para a próxima etapa:

// Change the namespace as desired, but make sure that all source files use this same namespace,
// or there will be errors!
namespace MAUI_IronPDF;    

// This namespace is required to make use of IronPDF functionality
using IronPdf;

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

    private void GeneratePDF(object sender, EventArgs e)
    {
        ChromePdfRenderer renderer = new ChromePdfRenderer();
        var doc = renderer.RenderHtmlAsPdf("<h1>Hello IronPDF!</h1> <p>I'm using IronPDF MAUI!</p>");
        // Saves the memory stream as file.
        SaveService saveService = new SaveService();
        saveService.SaveAndView("IronPDF HTML string.pdf", "application/pdf", doc.Stream);
    }
}
// Change the namespace as desired, but make sure that all source files use this same namespace,
// or there will be errors!
namespace MAUI_IronPDF;    

// This namespace is required to make use of IronPDF functionality
using IronPdf;

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

    private void GeneratePDF(object sender, EventArgs e)
    {
        ChromePdfRenderer renderer = new ChromePdfRenderer();
        var doc = renderer.RenderHtmlAsPdf("<h1>Hello IronPDF!</h1> <p>I'm using IronPDF MAUI!</p>");
        // Saves the memory stream as file.
        SaveService saveService = new SaveService();
        saveService.SaveAndView("IronPDF HTML string.pdf", "application/pdf", doc.Stream);
    }
}
Imports IronPdf

' Change the namespace as desired, but make sure that all source files use this same namespace,
' or there will be errors!
Namespace MAUI_IronPDF

	' This namespace is required to make use of IronPDF functionality

	Partial Public Class MainPage
		Inherits ContentPage

		Public Sub New()
			InitializeComponent()
		End Sub

		Private Sub GeneratePDF(ByVal sender As Object, ByVal e As EventArgs)
			Dim renderer As New ChromePdfRenderer()
			Dim doc = renderer.RenderHtmlAsPdf("<h1>Hello IronPDF!</h1> <p>I'm using IronPDF MAUI!</p>")
			' Saves the memory stream as file.
			Dim saveService As New SaveService()
			saveService.SaveAndView("IronPDF HTML string.pdf", "application/pdf", doc.Stream)
		End Sub
	End Class
End Namespace
$vbLabelText   $csharpLabel

Agora, crie um novo arquivo de classe chamado SaveService.cs na raiz do projeto e adicione o seguinte código-fonte:

// Change the namespace as desired, but make sure that all source files use this same namespace,
// or there will be errors!
namespace MAUI_IronPDF
{
    // SaveService partial class declaration ... this allows a layer of abstraction
    // as we implement the save file details specially for each platform on which this app will
    // operate! 
    public partial class SaveService
    {
        public void SaveAndView(string filename, string contentType, MemoryStream stream)
        {
            SaveFile(filename, contentType, stream);
        }

        // Additional partial files will provide implementations for this method specifically.
        partial void SaveFile(string filename, string contentType, MemoryStream stream);
    }
}
// Change the namespace as desired, but make sure that all source files use this same namespace,
// or there will be errors!
namespace MAUI_IronPDF
{
    // SaveService partial class declaration ... this allows a layer of abstraction
    // as we implement the save file details specially for each platform on which this app will
    // operate! 
    public partial class SaveService
    {
        public void SaveAndView(string filename, string contentType, MemoryStream stream)
        {
            SaveFile(filename, contentType, stream);
        }

        // Additional partial files will provide implementations for this method specifically.
        partial void SaveFile(string filename, string contentType, MemoryStream stream);
    }
}
' Change the namespace as desired, but make sure that all source files use this same namespace,
' or there will be errors!
Namespace MAUI_IronPDF
	' SaveService partial class declaration ... this allows a layer of abstraction
	' as we implement the save file details specially for each platform on which this app will
	' operate! 
	Partial Public Class SaveService
		Public Sub SaveAndView(ByVal filename As String, ByVal contentType As String, ByVal stream As MemoryStream)
			SaveFile(filename, contentType, stream)
		End Sub

		' Additional partial files will provide implementations for this method specifically.
		Partial Private Sub SaveFile(ByVal filename As String, ByVal contentType As String, ByVal stream As MemoryStream)
		End Sub
	End Class
End Namespace
$vbLabelText   $csharpLabel

Como os detalhes de implementação para salvar conteúdo em dispositivos do usuário variam de acordo com cada plataforma (Windows, Android, macOS, etc.), é necessário escrever código específico para cada tipo de dispositivo que o aplicativo suportará. Para tornar isso possível, definimos SaveService como uma classe parcial (para fins de abstração) contendo um método parcial, chamado SaveAndView. Em seguida, a implementação deste método será definida em uma classe parcial separada para uma ou mais pastas aninhadas na pasta Plataformas dentro do Explorador de Soluções (veja a imagem abaixo):

Criando um arquivo PDF em .NET MAUI usando IronPDF, Figura 7: A estrutura de pastas para implementar a compatibilidade entre plataformas A estrutura de pastas para implementar compatibilidade entre plataformas

Para simplificar, este tutorial definirá o arquivo parcial mencionado anteriormente apenas para a plataforma Windows. Crie um novo arquivo SaveService.cs na pasta da plataforma Windows contendo o código mostrado abaixo:

using Windows.Storage;
using Windows.Storage.Pickers;
using Windows.Storage.Streams;
using Windows.UI.Popups;

namespace MAUI_IronPDF;

public partial class SaveService
{
    async partial void SaveFile(string filename, string contentType, MemoryStream stream)
    {
        StorageFile stFile;
        string extension = Path.GetExtension(filename);
        // Gets process windows handle to open the dialog in application process.
        IntPtr windowHandle = System.Diagnostics.Process.GetCurrentProcess().MainWindowHandle;
        if (!Windows.Foundation.Metadata.ApiInformation.IsTypePresent("Windows.Phone.UI.Input.HardwareButtons"))
        {
            // Creates file save picker to save a file.
            FileSavePicker savePicker = new();
            savePicker.DefaultFileExtension = ".pdf";
            savePicker.SuggestedFileName = filename;
            // Saves the file as PDF file.
            savePicker.FileTypeChoices.Add("PDF", new List<string>() { ".pdf" });

            WinRT.Interop.InitializeWithWindow.Initialize(savePicker, windowHandle);
            stFile = await savePicker.PickSaveFileAsync();
        }
        else
        {
            StorageFolder local = ApplicationData.Current.LocalFolder;
            stFile = await local.CreateFileAsync(filename, CreationCollisionOption.ReplaceExisting);
        }
        if (stFile != null)
        {
            using (IRandomAccessStream zipStream = await stFile.OpenAsync(FileAccessMode.ReadWrite))
            {
                // Writes compressed data from memory to file.
                using Stream outstream = zipStream.AsStreamForWrite();
                outstream.SetLength(0);
                // Saves the stream as file.
                byte [] buffer = stream.ToArray();
                outstream.Write(buffer, 0, buffer.Length);
                outstream.Flush();
            }
            // Create message dialog box.
            MessageDialog msgDialog = new("Do you want to view the document?", "File has been created successfully");
            UICommand yesCmd = new("Yes");
            msgDialog.Commands.Add(yesCmd);
            UICommand noCmd = new("No");
            msgDialog.Commands.Add(noCmd);

            WinRT.Interop.InitializeWithWindow.Initialize(msgDialog, windowHandle);

            // Showing a dialog box.
            IUICommand cmd = await msgDialog.ShowAsync();
            if (cmd.Label == yesCmd.Label)
            {
                // Launch the saved file.
                await Windows.System.Launcher.LaunchFileAsync(stFile);
            }
        }
    }
}
using Windows.Storage;
using Windows.Storage.Pickers;
using Windows.Storage.Streams;
using Windows.UI.Popups;

namespace MAUI_IronPDF;

public partial class SaveService
{
    async partial void SaveFile(string filename, string contentType, MemoryStream stream)
    {
        StorageFile stFile;
        string extension = Path.GetExtension(filename);
        // Gets process windows handle to open the dialog in application process.
        IntPtr windowHandle = System.Diagnostics.Process.GetCurrentProcess().MainWindowHandle;
        if (!Windows.Foundation.Metadata.ApiInformation.IsTypePresent("Windows.Phone.UI.Input.HardwareButtons"))
        {
            // Creates file save picker to save a file.
            FileSavePicker savePicker = new();
            savePicker.DefaultFileExtension = ".pdf";
            savePicker.SuggestedFileName = filename;
            // Saves the file as PDF file.
            savePicker.FileTypeChoices.Add("PDF", new List<string>() { ".pdf" });

            WinRT.Interop.InitializeWithWindow.Initialize(savePicker, windowHandle);
            stFile = await savePicker.PickSaveFileAsync();
        }
        else
        {
            StorageFolder local = ApplicationData.Current.LocalFolder;
            stFile = await local.CreateFileAsync(filename, CreationCollisionOption.ReplaceExisting);
        }
        if (stFile != null)
        {
            using (IRandomAccessStream zipStream = await stFile.OpenAsync(FileAccessMode.ReadWrite))
            {
                // Writes compressed data from memory to file.
                using Stream outstream = zipStream.AsStreamForWrite();
                outstream.SetLength(0);
                // Saves the stream as file.
                byte [] buffer = stream.ToArray();
                outstream.Write(buffer, 0, buffer.Length);
                outstream.Flush();
            }
            // Create message dialog box.
            MessageDialog msgDialog = new("Do you want to view the document?", "File has been created successfully");
            UICommand yesCmd = new("Yes");
            msgDialog.Commands.Add(yesCmd);
            UICommand noCmd = new("No");
            msgDialog.Commands.Add(noCmd);

            WinRT.Interop.InitializeWithWindow.Initialize(msgDialog, windowHandle);

            // Showing a dialog box.
            IUICommand cmd = await msgDialog.ShowAsync();
            if (cmd.Label == yesCmd.Label)
            {
                // Launch the saved file.
                await Windows.System.Launcher.LaunchFileAsync(stFile);
            }
        }
    }
}
Imports Windows.Storage
Imports Windows.Storage.Pickers
Imports Windows.Storage.Streams
Imports Windows.UI.Popups

Namespace MAUI_IronPDF

	Partial Public Class SaveService
		Private Async Sub SaveFile(ByVal filename As String, ByVal contentType As String, ByVal stream As MemoryStream)
			Dim stFile As StorageFile
			Dim extension As String = Path.GetExtension(filename)
			' Gets process windows handle to open the dialog in application process.
			Dim windowHandle As IntPtr = System.Diagnostics.Process.GetCurrentProcess().MainWindowHandle
			If Not Windows.Foundation.Metadata.ApiInformation.IsTypePresent("Windows.Phone.UI.Input.HardwareButtons") Then
				' Creates file save picker to save a file.
				Dim savePicker As New FileSavePicker()
				savePicker.DefaultFileExtension = ".pdf"
				savePicker.SuggestedFileName = filename
				' Saves the file as PDF file.
				savePicker.FileTypeChoices.Add("PDF", New List(Of String)() From {".pdf"})

				WinRT.Interop.InitializeWithWindow.Initialize(savePicker, windowHandle)
				stFile = Await savePicker.PickSaveFileAsync()
			Else
				Dim local As StorageFolder = ApplicationData.Current.LocalFolder
				stFile = Await local.CreateFileAsync(filename, CreationCollisionOption.ReplaceExisting)
			End If
			If stFile IsNot Nothing Then
				Using zipStream As IRandomAccessStream = Await stFile.OpenAsync(FileAccessMode.ReadWrite)
					' Writes compressed data from memory to file.
					Using outstream As Stream = zipStream.AsStreamForWrite()
						outstream.SetLength(0)
						' Saves the stream as file.
						Dim buffer() As Byte = stream.ToArray()
						outstream.Write(buffer, 0, buffer.Length)
						outstream.Flush()
					End Using
				End Using
				' Create message dialog box.
				Dim msgDialog As New MessageDialog("Do you want to view the document?", "File has been created successfully")
				Dim yesCmd As New UICommand("Yes")
				msgDialog.Commands.Add(yesCmd)
				Dim noCmd As New UICommand("No")
				msgDialog.Commands.Add(noCmd)

				WinRT.Interop.InitializeWithWindow.Initialize(msgDialog, windowHandle)

				' Showing a dialog box.
				Dim cmd As IUICommand = Await msgDialog.ShowAsync()
				If cmd.Label = yesCmd.Label Then
					' Launch the saved file.
					Await Windows.System.Launcher.LaunchFileAsync(stFile)
				End If
			End If
		End Sub
	End Class
End Namespace
$vbLabelText   $csharpLabel

Compile e execute o aplicativo MAUI. Uma janela será exibida contendo a interface mostrada abaixo:

Criando um arquivo PDF no .NET MAUI usando o IronPDF, Figura 8: A interface do usuário do aplicativo MAUI A interface do usuário do aplicativo MAUI

Clique no botão "Gerar PDF". Após alguns instantes, uma janela pop-up aparecerá para que você escolha o local onde o arquivo PDF gerado será salvo.

Criando um arquivo PDF no .NET MAUI usando o IronPDF, Figura 9: Selecione um local para salvar o arquivo PDF Selecione um local para salvar o arquivo PDF.

Conclusão

IronPDF é uma das bibliotecas de conversão de PDF mais utilizadas, permitindo gerar, ler, editar e formatar PDFs. A biblioteca IronPDF oferece muitos benefícios e funcionalidades, incluindo um mecanismo de navegador que ajuda a converter um URL em um arquivo PDF, permite adicionar CSS a strings HTML e convertê-las em arquivos PDF, além de possibilitar o preenchimento de formulários em PDF. Todas as funcionalidades do IronPDF estão incluídas em uma única biblioteca.

O IronPDF está disponível em diversas estruturas de preços. O preço básico do IronPDF começa em $799. Suporte e atualizações do produto também estão disponíveis mediante o pagamento de uma taxa anual. A cobertura de redistribuição isenta de royalties também pode ser adquirida como um complemento.

Em resumo, o IronPDF é recomendado, pois oferece ótimo desempenho e uma grande variedade de recursos para desenvolvedores que trabalham com PDFs. Ele suporta plataformas universais como .NET MAUI. Além disso, oferece excelente assistência e documentação, permitindo que você utilize plenamente a ampla gama da biblioteca IronPDF e seus diversos recursos.

Perguntas frequentes

Como posso gerar arquivos PDF em um aplicativo .NET MAUI?

Para gerar arquivos PDF em um aplicativo .NET MAUI, você pode usar o IronPDF. Comece configurando um projeto .NET MAUI no Visual Studio, instale o IronPDF via NuGet e use o método ` ChromePdfRenderer.RenderHtmlAsPdf para converter o conteúdo HTML em um documento PDF.

O que torna o .NET MAUI adequado para o desenvolvimento de aplicativos multiplataforma?

O .NET MAUI é ideal para o desenvolvimento de aplicativos multiplataforma, pois permite que os desenvolvedores criem aplicativos nativos para dispositivos móveis e desktops usando C# e XAML para Android, iOS, macOS e Windows a partir de uma única base de código.

Como o IronPDF lida com HTML, CSS e JavaScript na conversão de PDF?

O IronPDF utiliza o mecanismo do Google Chrome para renderizar com precisão HTML, CSS e JavaScript em formato PDF, garantindo que as páginas da web sejam convertidas sem perda de formatação.

Qual é o processo para salvar arquivos PDF em diferentes plataformas em um aplicativo .NET MAUI?

Em um aplicativo .NET MAUI que utiliza o IronPDF, a classe SaveService é usada para salvar arquivos PDF. Ela inclui implementações específicas para cada plataforma, permitindo o gerenciamento do salvamento de arquivos em sistemas operacionais como Windows e Android.

Quais são alguns recursos avançados disponíveis no IronPDF para aplicações .NET?

O IronPDF oferece recursos avançados, como a criação de PDFs interativos, o preenchimento e envio de formulários, a fusão e divisão de documentos, a extração de texto e imagens e a adição de cabeçalhos, rodapés e marcas d'água.

Como faço para integrar o IronPDF em um projeto .NET MAUI no Visual Studio?

Para integrar o IronPDF em um projeto .NET MAUI, utilize o Gerenciador de Pacotes NuGet no Visual Studio. Procure por 'IronPDF' e instale-o em seu projeto para começar a gerar e gerenciar PDFs.

É possível usar o IronPDF para converter um URL de página web em PDF em um aplicativo .NET MAUI?

Sim, o IronPDF pode converter um URL de página da web em um PDF usando seus recursos de renderização da web para capturar com precisão o conteúdo HTML, CSS e JavaScript e renderizá-lo no formato PDF.

Qual é o papel do XAML no design de interfaces de usuário para aplicativos .NET MAUI?

O XAML é usado no .NET MAUI para projetar a interface do usuário de aplicativos. Ele permite que os desenvolvedores criem layouts responsivos e visualmente atraentes que funcionam perfeitamente em diversas plataformas.

Quais são os benefícios de usar o IronPDF em projetos .NET MAUI?

O IronPDF oferece benefícios como facilidade de uso, documentação abrangente, desempenho e a capacidade de lidar com diversas tarefas em PDF, tornando-o uma escolha confiável para desenvolvedores que trabalham com PDFs em projetos .NET MAUI.

O IronPDF é totalmente compatível com o .NET 10 e quais as vantagens disso?

Sim, o IronPDF é totalmente compatível com o .NET 10, oferecendo suporte nativo, assim como às versões 9, 8, 7, 6, Core, Standard e Framework. Utilizar o IronPDF com o .NET 10 permite aproveitar melhorias de desempenho, como alocação reduzida de memória heap, comportamento JIT/runtime aprimorado e novos recursos da linguagem C#, tornando a geração e manipulação de PDFs mais rápidas e eficientes.

Curtis Chau
Redator Técnico

Curtis Chau é bacharel em Ciência da Computação (Universidade Carleton) e se especializa em desenvolvimento front-end, com experiência em Node.js, TypeScript, JavaScript e React. Apaixonado por criar interfaces de usuário intuitivas e esteticamente agradáveis, Curtis gosta de trabalhar com frameworks modernos e criar manuais ...

Leia mais

Equipe de suporte de ferro

Estamos online 24 horas por dia, 5 dias por semana.
Bater papo
E-mail
Liga para mim