QuestPDF é uma biblioteca poderosa e de fácil utilização na criação de documentos PDF em aplicações .NET. Ele permite projetar layouts complexos com uma implementação simples, sem quaisquer dependências externas ou código nativo. Você pode utilizar o QuestPDF para gerar relatórios, faturas, formulários, gráficos, tabelas e muito mais.
Neste artigo, mostrarei como utilizar o QuestPDF e criar seu primeiro documento PDF. Você aprenderá como instalar a biblioteca, criar um modelo de documento simples e renderizá-lo em um arquivo PDF. Você também verá como usar alguns dos componentes e estilos integrados para criar um documento com aparência profissional.
O que é o QuestPDF?
O QuestPDF é uma biblioteca open-source que permite criar documentos PDF a partir do código .NET de maneira declarativa. Ele foi projetado para ser simples, porém flexível, permitindo que desenvolvedores definam layouts de página, adicionem elementos visuais como textos, tabelas, imagens e gráficos de forma organizada e reutilizável.
Entre suas vantagens estão:
- Facilidade de uso: uma API clara e de fácil entendimento.
- Desempenho: eficiente na geração de PDFs mesmo para documentos maiores.
- Flexibilidade: permite criar layouts complexos sem esforço excessivo.
Pré-requisitos
- Visual Studio 2022 (.NET 8.0)
- Nuget packages:
Web API
Com o QuestPDF instalado, podemos começar a construir um relatório simples. Abaixo, vamos criar um exemplo básico de um documento PDF com cabeçalho, corpo e rodapé.
Neste exemplo, criamos um documento simples com um cabeçalho, uma tabela no corpo e um rodapé com a numeração das páginas.
Aqui estão alguns detalhes importantes:
Page
: configura as propriedades da página, como tamanho e margens.Header
,Content
eFooter
: representam as três seções principais de uma página.Table
: é o elemento usado para gerar tabelas, útil para relatórios que envolvem listas de dados.
Em seguida, é necessário configurar a controller para chamar o método de geração do PDF:
Testando
Para realizar os testes, execute o endpoint GET /api/sample no Swagger e faça o download do arquivo gerado:
Em seguida, abra o arquivo PDF gerado e analise o resultado:
Finalizando
O QuestPDF é uma biblioteca poderosa e fácil de usar para a criação de relatórios em PDF no .NET. Sua abordagem declarativa facilita a criação de layouts complexos, e sua performance garante que você possa utilizá-la mesmo em aplicações com alta demanda de geração de relatórios. Se você ainda não experimentou o QuestPDF, recomendo fortemente integrá-lo aos seus projetos.
Os detalhes completo deste exemplo você encontra no meu GitHub: https://github.com/hgmauri/sample-questpdf