Como converter HTML para PDF em C# for .NET 10 usando o IronPDF
.NET MAUI permite às equipes lançar uma única base de código para Windows e macOS, o que a torna uma escolha popular para aplicativos de desktop de linha de negócios, como ferramentas de serviço de campo, sistemas de ponto de venda e painéis de operações. Esses aplicativos já renderizam telas estruturadas no XAML, e os usuários frequentemente precisam de uma cópia do que veem como um documento portátil. O IronPDF transforma a página atual do MAUI em um PDF com uma chamada de método, para que a interface do usuário que a equipe já criou se torne o relatório.
Onde a necessidade aparece
Um inspetor de campo termina um trabalho em um formulário XAML. Um vendedor cria uma cotação na tela. Um gerente revisa um painel de KPI. Cada um termina da mesma maneira: alguém quer um registro limpo e compartilhável para um cliente ou o escritório de retaguarda. Recriar essa tela como um modelo de relatório separado significa dois layouts que se separam com o tempo. Apontar o documento diretamente para a página existente evita essa manutenção.
Uma página, um documento
IronPDF renderiza um MAUI ContentPage para PDF através do seu motor Chrome, preservando fontes, cores e layout. O método RenderContentPageToPdf lida com a conversão, e o resultado é um PdfDocument padrão pronto para salvar ou editar.
using IronPdf;
using IronPdf.Extensions.Maui;
private async void PrintToPdf(object sender, EventArgs e)
{
ChromePdfRenderer renderer = new ChromePdfRenderer();
renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter
{
HtmlFragment = "<h1>Inspection Report</h1>"
};
PdfDocument pdf = await renderer.RenderContentPageToPdf<MainPage, App>();
pdf.SaveAs("inspection-report.pdf");
}Imports IronPdf
Imports IronPdf.Extensions.Maui
Private Async Sub PrintToPdf(sender As Object, e As EventArgs)
Dim renderer As New ChromePdfRenderer()
renderer.RenderingOptions.HtmlHeader = New HtmlHeaderFooter With {
.HtmlFragment = "<h1>Inspection Report</h1>"
}
Dim pdf As PdfDocument = Await renderer.RenderContentPageToPdf(Of MainPage, App)()
pdf.SaveAs("inspection-report.pdf")
End SubConectar isso a um botão no arquivo XAML é todo o trabalho de interface do usuário necessário:
<Button
Text="Save as PDF"
Clicked="PrintToPdf"
HorizontalOptions="Center" />
Antes de conectá-lo
Alguns detalhes determinam se o recurso será entregue corretamente:
- Pacote de extensão:
RenderContentPageToPdfvive no pacoteIronPdf.Extensions.Maui, que está por cima do pacote principal IronPdf. Ambos são necessários. - Manipulação assíncrona: O método retorna uma tarefa, então aguardá-la mantém a interface responsiva enquanto uma página complexa renderiza. Um indicador de carregamento no botão melhora a experiência.
- Local de salvamento: Use um seletor de arquivos ou um diretório apropriado para a plataforma em vez de um caminho codificado, já que o mesmo código é executado no Windows e macOS.
- Escopo da plataforma: Geração de PDF no MAUI tem como alvo desktop e web. Plataformas móveis não são suportadas.
Um botão e uma chamada de método
Esse é todo o recurso: um botão, uma chamada. As equipes adicionam exportações de faturas, relatórios de inspeção e snapshots de painéis a um aplicativo de desktop MAUI sem uma camada de relatório separada. Como a saída é um PdfDocument, etapas adicionais, como números de página e compressão, estão disponíveis antes de salvar. Os detalhes completos do método estão no guia de XAML para PDF.

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 bem estruturados e visualmente atraentes.