
Como combinar imagens em um único PDF
IronPDF, uma renomada biblioteca C#, funciona com aplicações Blazor . Esta análise irá orientá-lo na utilização do IronPDF para incorporar um relatório em PDF em uma aplicação Blazor , demonstrando sua integração perfeita e eficácia.
Como criar um arquivo PDF em Blazor
Crie um novo projeto Blazor no Visual Studio.
Instale a biblioteca HTML-to-PDF para aplicativos Blazor.
Crie documentos PDF a partir de páginas da web por meio de URLs.
Criar documentos PDF a partir de strings HTML
1. Recursos do IronPDF
Os desenvolvedores podem criar, ler e processar documentos PDF rapidamente com a ajuda da robusta biblioteca IronPDF .NET PDF. O IronPDF possui um mecanismo Chrome integrado e oferece uma ampla gama de recursos práticos e poderosos. Isso inclui a capacidade de converter HTML5, JavaScript, CSS e imagens em PDF, a capacidade de adicionar cabeçalhos e rodapés exclusivos a documentos PDF e a capacidade de produzir PDFs exatamente como aparecem em um navegador da web. O IronPDF oferece suporte a diversas tecnologias web, incluindo HTML, ASPX, Razor Pages e frameworks MVC.
Os principais atributos do IronPDF são os seguintes:
- O IronPDF oferece controle total sobre a criação e modificação de arquivos PDF em aplicativos .NET C#.
- O IronPDF pode gerar arquivos PDF de páginas da web a partir de seus URLs, utilizando configurações específicas de User-Agent, Proxy, Cabeçalho e Cookie. O IronPDF pode gerar arquivos PDF para páginas da web localizadas atrás de formulários de login usando variáveis de formulário.
- O IronPDF pode extrair e/ou remover fotos de arquivos PDF preexistentes.
- O IronPDF permite adicionar texto, fotos, marcadores, marcas d'água e outros elementos a documentos PDF.
- O IronPDF facilita a mesclagem e a divisão de páginas de um ou mais documentos PDF.
- O IronPDF consegue processar recursos de páginas web, como JavaScript, CSS e arquivos de mídia, e renderizá-los em documentos PDF exatamente como apareceriam em um navegador.
- O IronPDF é compatível com todas as versões do .NET Framework, incluindo .NET Core, .NET Standard, etc.
2. O que é Blazor?
Blazor é um framework de aplicações web que possibilita a criação de aplicações web do lado do cliente em C# e HTML usando WebAssembly.
Os aplicativos Web Assembly são enviados ao navegador em um formato de instrução binária que pode operar a uma velocidade próxima à nativa. Isso criou um novo potencial para que linguagens como C# sejam executadas dentro do navegador.
Criando um novo projeto no Visual Studio
Para começar, abra o aplicativo Microsoft Visual Studio e selecione "Novo Projeto" no menu Arquivo. Em seguida, selecione "Aplicativo de servidor Blazor ".
Criando um novo projeto no Visual Studio
Insira o nome do projeto e selecione o caminho do arquivo. Em seguida, clique no botão Criar .
Escolher o nome e a localização da nova aplicação Blazor.
Selecione a .NET Framework desejada (neste tutorial, usaremos o .NET 6.0), conforme mostrado na captura de tela abaixo:
Criando um novo projeto no Visual Studio com o .NET Framework 6.0
O Microsoft Visual Studio irá agora gerar a estrutura para esta aplicação Blazor .
Em seguida, adicione a biblioteca IronPDF a este novo projeto.
3. Instale a biblioteca IronPDF.
A biblioteca IronPDF pode ser baixada e instalada de quatro maneiras:
- Usando o Gerenciador de Pacotes NuGet do Visual Studio
- Usando a linha de comando do Visual Studio
- Baixando diretamente do site NuGet
- Baixando diretamente do site do IronPDF
3.1 Usando o Gerenciador de Pacotes NuGet do Visual Studio
O Visual Studio fornece o Gerenciador de Pacotes NuGet para auxiliar na instalação de bibliotecas diretamente nos projetos. A captura de tela abaixo mostra como abrir o Gerenciador de Pacotes NuGet .
Acessando o Gerenciador de Pacotes NuGet do Visual Studio
Utilize o campo de pesquisa na aba Procurar para buscar por "IronPDF", como mostrado na captura de tela abaixo:
Procurando a biblioteca IronPDF na interface gráfica do Gerenciador de Pacotes NuGet.
Na imagem acima, é apresentada a lista de resultados de pesquisa relacionados. Selecione as opções necessárias para instalar o pacote em seu projeto.
3.2 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:
O pacote será baixado e instalado no projeto atual.
Instalando a biblioteca IronPDF usando o Console do Gerenciador de Pacotes NuGet
3.3 Baixando diretamente do site do NuGet
A terceira maneira de instalar a biblioteca IronPDF é baixar o pacote NuGet diretamente do site.
Acesse o site do NuGet para o IronPDF .
- Clique na opção "Baixar pacote" no menu à direita.
- Abra o pacote baixado no seu sistema de arquivos. Será instalado automaticamente.
- Recarregue a solução e comece a usá-la em seu projeto.
3.4 Download direto do site do IronPDF
Acesse o site do IronPDF para baixar o pacote IronPDF diretamente.
Após o download, siga estes passos para adicionar o pacote ao seu projeto:
- Clique com o botão direito do mouse no projeto na janela de soluções.
- Selecione a opção "Adicionar" > "Referência" e navegue até o local da biblioteca que você baixou anteriormente.
- Clique em OK para adicionar a biblioteca como referência.
4. Criar documentos PDF no aplicativo Blazor Server
O aplicativo Blazor deste tutorial usará o IronPDF para obter o conteúdo HTML de uma página da web a partir de seu URL e convertê-lo em um documento PDF.
Insira o seguinte código-fonte no arquivo Razor contido no projeto.
@using IronPdf
@code {
/// <summary>
/// This method exports data by converting a URL to a PDF file and initiating its download.
/// </summary>
public async Task ExportData()
{
try
{
string fileName = "Demo.pdf";
var renderer = new ChromePdfRenderer();
// Render the contents of the URL as a PDF document
var pdf = renderer.RenderUrlAsPdf("https://localhost:7018/fetchdata");
// Save the PDF using a JavaScript function
await JSRuntime.InvokeVoidAsync("saveAsFile", fileName, Convert.ToBase64String(pdf.Stream.ToArray()));
}
catch (Exception ex)
{
// Handle any exceptions that may occur
Console.Error.WriteLine($"Error in ExportData: {ex.Message}");
}
}
}@Code
' <summary>
' This method exports data by converting a URL to a PDF file and initiating its download.
' </summary>
Public Async Function ExportData() As Task
Try
Dim fileName As String = "Demo.pdf"
Dim renderer As New ChromePdfRenderer()
' Render the contents of the URL as a PDF document
Dim pdf = renderer.RenderUrlAsPdf("https://localhost:7018/fetchdata")
' Save the PDF using a JavaScript function
Await JSRuntime.InvokeVoidAsync("saveAsFile", fileName, Convert.ToBase64String(pdf.Stream.ToArray()))
Catch ex As Exception
' Handle any exceptions that may occur
Console.Error.WriteLine($"Error in ExportData: {ex.Message}")
End Try
End FunctionO trecho de código acima utiliza dois métodos para gerar documentos PDF a partir de HTML. O primeiro é o método RenderUrlAsPdf da IronPDF, que baixa o conteúdo HTML de uma URL fornecida e o converte em formato PDF.
O segundo método é o método estático JSRuntime.InvokeVoidAsync, que aciona o motor JavaScript do navegador para invocar uma função JavaScript dentro do escopo da página da web que salva o conteúdo PDF em um arquivo no sistema de arquivos do cliente.
Essa função JavaScript está incluída abaixo:
<script type="text/javascript">
/**
* Saves the PDF data as a file on the client's system.
* @param {string} filename - The name of the file to be created.
* @param {string} bytesBase64 - The Base64 encoded string of the PDF data.
*/
function saveAsFile(filename, bytesBase64) {
if (navigator.msSaveBlob) {
// Download the document in Microsoft Edge browser
var data = window.atob(bytesBase64);
var bytes = new Uint8Array(data.length);
for (var i = 0; i < data.length; i++) {
bytes[i] = data.charCodeAt(i);
}
var blob = new Blob([bytes.buffer], { type: "application/octet-stream" });
navigator.msSaveBlob(blob, filename);
window.navigator.msSaveOrOpenBlob(blob);
}
else {
var link = document.createElement('a');
link.download = filename;
link.href = "data:application/octet-stream;base64," + bytesBase64;
document.body.appendChild(link); // Needed for Firefox
link.click();
document.body.removeChild(link);
}
}
</script>
A função JavaScript acima recebe os dados Base64 do Blazor e os converte em um blob antes de salvá-los no local do lado do cliente.
Alternativamente, o método SaveAs da classe ChromePdfRenderer também pode ser usado para salvar documentos PDF no armazenamento local do navegador.
5. Criar um documento PDF a partir de uma string HTML
O seguinte trecho de código mostra como transformar uma string HTML em um documento.
@using IronPdf
@code {
/// <summary>
/// Demonstrates turning an HTML string into a PDF document.
/// </summary>
public void GeneratePdfFromHtmlString()
{
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf("<h1>Hello world!!</h1>");
// You can save the generated PDF locally
pdf.SaveAs("HelloWorld.pdf");
}
}@Using IronPdf
@Code
''' <summary>
''' Demonstrates turning an HTML string into a PDF document.
''' </summary>
Public Sub GeneratePdfFromHtmlString()
Dim renderer As New ChromePdfRenderer()
Dim pdf = renderer.RenderHtmlAsPdf("<h1>Hello world!!</h1>")
' You can save the generated PDF locally
pdf.SaveAs("HelloWorld.pdf")
End SubO exemplo anterior usa o método de instância RenderHtmlAsPdf para transformar qualquer string de HTML em conteúdo PDF. Além disso, o método SaveAs pode ser usado nos procedimentos descritos anteriormente para salvar este conteúdo no computador do cliente.
O aplicativo Blazor PDF Generation criado neste tutorial
A captura de tela acima mostra o aplicativo web desenvolvido neste tutorial. Ao clicar no botão "Download", o código C# será executado para gerar o conteúdo do PDF, e uma função JavaScript será executada para baixar o conteúdo do PDF no lado do cliente.
Conclusão
Este artigo demonstrou como desenvolver uma aplicação web Blazor que utiliza a biblioteca IronPDF para gerar arquivos PDF a partir de páginas web.
O IronPDF não é de código aberto, porém, uma chave de avaliação gratuita permite que você o utilize em produção sem marcas d'água.

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.
Artigos relacionados


