Como exportar um PDF em C# | IronPDF

Tutorial de exemplo de código C# para exportar para PDF

This article was translated from English: Does it need improvement?
Translated
View the article in English

Use o IronPDF para exportar conteúdo HTML para PDF em C# com métodos simples como SaveAs(), Stream e BinaryData. Esta biblioteca C# para PDF permite que desenvolvedores convertam programaticamente documentos HTML em PDF e os disponibilizem em navegadores web ou os salvem em disco.

IronPDF é uma biblioteca C# para PDF que permite usar C# para salvar seu HTML como um arquivo PDF. Também permite que desenvolvedores C# / VB editem documentos PDF programaticamente. Seja para gerar relatórios, criar faturas ou converter páginas da web, o IronPDF oferece uma solução robusta para geração de PDFs em aplicações C# .

Início rápido: Exportar HTML para PDF em C# com IronPDF

Exporte seu conteúdo HTML para PDF em C# usando o IronPDF. Este guia mostra como converter HTML em um documento PDF e salvá-lo com apenas algumas linhas de código. O IronPDF simplifica a geração de PDFs, permitindo que os desenvolvedores integrem a funcionalidade de exportação de PDFs em seus aplicativos.

  1. Instale IronPDF com o Gerenciador de Pacotes NuGet

    PM > Install-Package IronPdf
  2. Copie e execute este trecho de código.

    new IronPdf.ChromePdfRenderer().RenderHtmlAsPdf("<h1>HelloPDF</h1>").SaveAs("myExportedFile.pdf");
  3. Implante para testar em seu ambiente de produção.

    Comece a usar IronPDF em seu projeto hoje com uma avaliação gratuita

    arrow pointer


Quais são as diferentes opções para salvar PDFs?

Ao trabalhar com documentos PDF em C#, o IronPDF oferece diversas opções para salvar e exportar os PDFs gerados. Cada método serve a diferentes casos de uso, desde o simples armazenamento de arquivos até a disponibilização de PDFs em aplicações web. As seções a seguir abordam as opções disponíveis para exportar e salvar PDFs em C# .

Como salvar um PDF no disco

Use o método PdfDocument.SaveAs para salvar seu PDF no disco. Essa é a abordagem mais simples para aplicativos de desktop ou quando você precisa armazenar PDFs permanentemente no servidor.

// Complete example for saving PDF to disk
using IronPdf;

// Initialize the Chrome PDF renderer
var renderer = new ChromePdfRenderer();

// Create HTML content with styling
string htmlContent = @"
<html>
<head>
    <style>
        body { font-family: Arial, sans-serif; margin: 40px; }
        h1 { color: #333; }
        .content { line-height: 1.6; }
    </style>
</head>
<body>
    <h1>Invoice #12345</h1>
    <div class='content'>
        <p>Date: " + DateTime.Now.ToString("yyyy-MM-dd") + @"</p>
        <p>Thank you for your business!</p>
    </div>
</body>
</html>";

// Render HTML to PDF
PdfDocument pdf = renderer.RenderHtmlAsPdf(htmlContent);

// Save to disk with standard method
pdf.SaveAs("invoice_12345.pdf");

// Save with password protection for sensitive documents
pdf.Password = "secure123";
pdf.SaveAs("protected_invoice_12345.pdf");
// Complete example for saving PDF to disk
using IronPdf;

// Initialize the Chrome PDF renderer
var renderer = new ChromePdfRenderer();

// Create HTML content with styling
string htmlContent = @"
<html>
<head>
    <style>
        body { font-family: Arial, sans-serif; margin: 40px; }
        h1 { color: #333; }
        .content { line-height: 1.6; }
    </style>
</head>
<body>
    <h1>Invoice #12345</h1>
    <div class='content'>
        <p>Date: " + DateTime.Now.ToString("yyyy-MM-dd") + @"</p>
        <p>Thank you for your business!</p>
    </div>
</body>
</html>";

// Render HTML to PDF
PdfDocument pdf = renderer.RenderHtmlAsPdf(htmlContent);

// Save to disk with standard method
pdf.SaveAs("invoice_12345.pdf");

// Save with password protection for sensitive documents
pdf.Password = "secure123";
pdf.SaveAs("protected_invoice_12345.pdf");
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Este método permite adicionar proteção por senha. Confira o seguinte artigo para saber mais sobre como assinar digitalmente PDFs exportados: ' Assinar digitalmente um documento PDF '. Para opções de segurança adicionais, explore nosso guia sobre permissões e senhas de PDF .

Como salvar um arquivo PDF em um MemoryStream em C# (System.IO.MemoryStream)

A propriedade IronPdf.PdfDocument.Stream salva o PDF na memória usando um System.IO.MemoryStream. Essa abordagem é ideal quando você precisa manipular os dados do PDF na memória ou passá-los para outros métodos sem criar arquivos temporários. Saiba mais sobre como trabalhar com fluxos de memória PDF .

// Example: Save PDF to MemoryStream
using IronPdf;
using System.IO;

var renderer = new ChromePdfRenderer();

// Render HTML content
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Monthly Report</h1><p>Sales figures...</p>");

// Get the PDF as a MemoryStream
MemoryStream stream = pdf.Stream;

// Example: Upload to cloud storage or database
// UploadToCloudStorage(stream);

// Example: Email as attachment without saving to disk
// EmailService.SendWithAttachment(stream, "report.pdf");

// Remember to dispose of the stream when done
stream.Dispose();
// Example: Save PDF to MemoryStream
using IronPdf;
using System.IO;

var renderer = new ChromePdfRenderer();

// Render HTML content
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Monthly Report</h1><p>Sales figures...</p>");

// Get the PDF as a MemoryStream
MemoryStream stream = pdf.Stream;

// Example: Upload to cloud storage or database
// UploadToCloudStorage(stream);

// Example: Email as attachment without saving to disk
// EmailService.SendWithAttachment(stream, "report.pdf");

// Remember to dispose of the stream when done
stream.Dispose();
Imports IronPdf
Imports System.IO

' Example: Save PDF to MemoryStream
Dim renderer As New ChromePdfRenderer()

' Render HTML content
Dim pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Monthly Report</h1><p>Sales figures...</p>")

' Get the PDF as a MemoryStream
Dim stream As MemoryStream = pdf.Stream

' Example: Upload to cloud storage or database
' UploadToCloudStorage(stream)

' Example: Email as attachment without saving to disk
' EmailService.SendWithAttachment(stream, "report.pdf")

' Remember to dispose of the stream when done
stream.Dispose()
$vbLabelText   $csharpLabel

Como salvar dados binários

A propriedade IronPdf.PdfDocument.BinaryData exporta o documento PDF como dados binários na memória. Isso é particularmente útil para armazenamento em banco de dados ou ao integrar com APIs que exigem matrizes de bytes.

Isso gera o PDF como um ByteArray, que é expresso em C# como byte [].

// Example: Convert PDF to binary data
using IronPdf;

var renderer = new ChromePdfRenderer();

// Configure rendering options for better quality
renderer.RenderingOptions = new ChromePdfRenderOptions()
{
    MarginTop = 20,
    MarginBottom = 20,
    MarginLeft = 10,
    MarginRight = 10,
    PaperSize = IronPdf.Rendering.PdfPaperSize.A4
};

// Render content to PDF
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Contract Document</h1>");

// Get binary data
byte[] binaryData = pdf.BinaryData;

// Example: Store in database
// database.StorePdfDocument(documentId, binaryData);

// Example: Send via API
// apiClient.UploadDocument(binaryData);
// Example: Convert PDF to binary data
using IronPdf;

var renderer = new ChromePdfRenderer();

// Configure rendering options for better quality
renderer.RenderingOptions = new ChromePdfRenderOptions()
{
    MarginTop = 20,
    MarginBottom = 20,
    MarginLeft = 10,
    MarginRight = 10,
    PaperSize = IronPdf.Rendering.PdfPaperSize.A4
};

// Render content to PDF
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Contract Document</h1>");

// Get binary data
byte[] binaryData = pdf.BinaryData;

// Example: Store in database
// database.StorePdfDocument(documentId, binaryData);

// Example: Send via API
// apiClient.UploadDocument(binaryData);
Imports IronPdf

' Example: Convert PDF to binary data
Dim renderer As New ChromePdfRenderer()

' Configure rendering options for better quality
renderer.RenderingOptions = New ChromePdfRenderOptions() With {
    .MarginTop = 20,
    .MarginBottom = 20,
    .MarginLeft = 10,
    .MarginRight = 10,
    .PaperSize = IronPdf.Rendering.PdfPaperSize.A4
}

' Render content to PDF
Dim pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Contract Document</h1>")

' Get binary data
Dim binaryData As Byte() = pdf.BinaryData

' Example: Store in database
' database.StorePdfDocument(documentId, binaryData)

' Example: Send via API
' apiClient.UploadDocument(binaryData)
$vbLabelText   $csharpLabel

Para cenários mais avançados que envolvem manipulação de dados binários, consulte nosso guia sobre como converter PDFs em MemoryStream .

Como servir conteúdo de um servidor web para um navegador.

Para disponibilizar um PDF na web, precisamos enviá-lo como dados binários em vez de HTML. Isso é essencial para aplicações web onde os usuários precisam baixar ou visualizar PDFs diretamente em seus navegadores. O IronPDF integra-se tanto com aplicações MVC quanto com aplicações ASP.NET tradicionais.

Exportação de PDF MVC

Em aplicações MVC modernas, servir PDFs é simples usando o FileStreamResult. Essa abordagem funciona bem com aplicações ASP.NET Core MVC :

// MVC Controller method for PDF export
public IActionResult DownloadInvoice(int invoiceId)
{
    // Generate your HTML content
    string htmlContent = GenerateInvoiceHtml(invoiceId);

    // Create PDF using IronPDF
    var renderer = new ChromePdfRenderer();
    PdfDocument pdf = renderer.RenderHtmlAsPdf(htmlContent);

    // Get the PDF stream
    MemoryStream stream = pdf.Stream;

    // Reset stream position
    stream.Position = 0;

    // Return file to browser - will prompt download
    return new FileStreamResult(stream, "application/pdf")
    {
        FileDownloadName = $"invoice_{invoiceId}.pdf"
    };
}

// Alternative: Display PDF in browser instead of downloading
public IActionResult ViewInvoice(int invoiceId)
{
    var renderer = new ChromePdfRenderer();
    PdfDocument pdf = renderer.RenderHtmlAsPdf(GenerateInvoiceHtml(invoiceId));

    // Return PDF for browser viewing
    return File(pdf.BinaryData, "application/pdf");
}
// MVC Controller method for PDF export
public IActionResult DownloadInvoice(int invoiceId)
{
    // Generate your HTML content
    string htmlContent = GenerateInvoiceHtml(invoiceId);

    // Create PDF using IronPDF
    var renderer = new ChromePdfRenderer();
    PdfDocument pdf = renderer.RenderHtmlAsPdf(htmlContent);

    // Get the PDF stream
    MemoryStream stream = pdf.Stream;

    // Reset stream position
    stream.Position = 0;

    // Return file to browser - will prompt download
    return new FileStreamResult(stream, "application/pdf")
    {
        FileDownloadName = $"invoice_{invoiceId}.pdf"
    };
}

// Alternative: Display PDF in browser instead of downloading
public IActionResult ViewInvoice(int invoiceId)
{
    var renderer = new ChromePdfRenderer();
    PdfDocument pdf = renderer.RenderHtmlAsPdf(GenerateInvoiceHtml(invoiceId));

    // Return PDF for browser viewing
    return File(pdf.BinaryData, "application/pdf");
}
Imports System.IO
Imports Microsoft.AspNetCore.Mvc
Imports IronPdf

' MVC Controller method for PDF export
Public Function DownloadInvoice(invoiceId As Integer) As IActionResult
    ' Generate your HTML content
    Dim htmlContent As String = GenerateInvoiceHtml(invoiceId)

    ' Create PDF using IronPDF
    Dim renderer As New ChromePdfRenderer()
    Dim pdf As PdfDocument = renderer.RenderHtmlAsPdf(htmlContent)

    ' Get the PDF stream
    Dim stream As MemoryStream = pdf.Stream

    ' Reset stream position
    stream.Position = 0

    ' Return file to browser - will prompt download
    Return New FileStreamResult(stream, "application/pdf") With {
        .FileDownloadName = $"invoice_{invoiceId}.pdf"
    }
End Function

' Alternative: Display PDF in browser instead of downloading
Public Function ViewInvoice(invoiceId As Integer) As IActionResult
    Dim renderer As New ChromePdfRenderer()
    Dim pdf As PdfDocument = renderer.RenderHtmlAsPdf(GenerateInvoiceHtml(invoiceId))

    ' Return PDF for browser viewing
    Return File(pdf.BinaryData, "application/pdf")
End Function
$vbLabelText   $csharpLabel

Exportação de PDF em ASP.NET

Para aplicações ASP.NET WebForms tradicionais, você pode disponibilizar PDFs diretamente através do objeto Response:

// ASP.NET WebForms PDF export
protected void ExportButton_Click(object sender, EventArgs e)
{
    // Create your PDF document
    var renderer = new ChromePdfRenderer();

    // Configure rendering options
    renderer.RenderingOptions = new ChromePdfRenderOptions()
    {
        PaperSize = IronPdf.Rendering.PdfPaperSize.Letter,
        PrintHtmlBackgrounds = true,
        CreatePdfFormsFromHtml = true
    };

    // Generate PDF from current page or custom HTML
    PdfDocument MyPdfDocument = renderer.RenderHtmlAsPdf(GetReportHtml());

    // Retrieves the PDF binary data
    byte[] Binary = MyPdfDocument.BinaryData;

    // Clears the existing response content
    Response.Clear();

    // Sets the response content type to 'application/octet-stream', suitable for PDF files
    Response.ContentType = "application/octet-stream";

    // Add content disposition header for download
    Response.AddHeader("Content-Disposition", 
        "attachment; filename=report_" + DateTime.Now.ToString("yyyyMMdd") + ".pdf");

    // Writes the binary data to the response output stream
    Context.Response.OutputStream.Write(Binary, 0, Binary.Length);

    // Flushes the response to send the data to the client
    Response.Flush();

    // End the response
    Response.End();
}
// ASP.NET WebForms PDF export
protected void ExportButton_Click(object sender, EventArgs e)
{
    // Create your PDF document
    var renderer = new ChromePdfRenderer();

    // Configure rendering options
    renderer.RenderingOptions = new ChromePdfRenderOptions()
    {
        PaperSize = IronPdf.Rendering.PdfPaperSize.Letter,
        PrintHtmlBackgrounds = true,
        CreatePdfFormsFromHtml = true
    };

    // Generate PDF from current page or custom HTML
    PdfDocument MyPdfDocument = renderer.RenderHtmlAsPdf(GetReportHtml());

    // Retrieves the PDF binary data
    byte[] Binary = MyPdfDocument.BinaryData;

    // Clears the existing response content
    Response.Clear();

    // Sets the response content type to 'application/octet-stream', suitable for PDF files
    Response.ContentType = "application/octet-stream";

    // Add content disposition header for download
    Response.AddHeader("Content-Disposition", 
        "attachment; filename=report_" + DateTime.Now.ToString("yyyyMMdd") + ".pdf");

    // Writes the binary data to the response output stream
    Context.Response.OutputStream.Write(Binary, 0, Binary.Length);

    // Flushes the response to send the data to the client
    Response.Flush();

    // End the response
    Response.End();
}
' ASP.NET WebForms PDF export
Protected Sub ExportButton_Click(sender As Object, e As EventArgs)
    ' Create your PDF document
    Dim renderer As New ChromePdfRenderer()

    ' Configure rendering options
    renderer.RenderingOptions = New ChromePdfRenderOptions() With {
        .PaperSize = IronPdf.Rendering.PdfPaperSize.Letter,
        .PrintHtmlBackgrounds = True,
        .CreatePdfFormsFromHtml = True
    }

    ' Generate PDF from current page or custom HTML
    Dim MyPdfDocument As PdfDocument = renderer.RenderHtmlAsPdf(GetReportHtml())

    ' Retrieves the PDF binary data
    Dim Binary As Byte() = MyPdfDocument.BinaryData

    ' Clears the existing response content
    Response.Clear()

    ' Sets the response content type to 'application/octet-stream', suitable for PDF files
    Response.ContentType = "application/octet-stream"

    ' Add content disposition header for download
    Response.AddHeader("Content-Disposition", "attachment; filename=report_" & DateTime.Now.ToString("yyyyMMdd") & ".pdf")

    ' Writes the binary data to the response output stream
    Context.Response.OutputStream.Write(Binary, 0, Binary.Length)

    ' Flushes the response to send the data to the client
    Response.Flush()

    ' End the response
    Response.End()
End Sub
$vbLabelText   $csharpLabel

Cenários avançados de exportação

Exportação em lote para PDF

Ao lidar com vários PDFs, você pode otimizar o processo de exportação:

// Batch export multiple PDFs to a zip file
public void ExportMultiplePdfsAsZip(List<string> htmlDocuments, string zipFilePath)
{
    using (var zipArchive = ZipFile.Open(zipFilePath, ZipArchiveMode.Create))
    {
        var renderer = new ChromePdfRenderer();

        for (int i = 0; i < htmlDocuments.Count; i++)
        {
            // Render each HTML document
            PdfDocument pdf = renderer.RenderHtmlAsPdf(htmlDocuments[i]);

            // Add to zip archive
            var entry = zipArchive.CreateEntry($"document_{i + 1}.pdf");
            using (var entryStream = entry.Open())
            {
                pdf.Stream.CopyTo(entryStream);
            }
        }
    }
}
// Batch export multiple PDFs to a zip file
public void ExportMultiplePdfsAsZip(List<string> htmlDocuments, string zipFilePath)
{
    using (var zipArchive = ZipFile.Open(zipFilePath, ZipArchiveMode.Create))
    {
        var renderer = new ChromePdfRenderer();

        for (int i = 0; i < htmlDocuments.Count; i++)
        {
            // Render each HTML document
            PdfDocument pdf = renderer.RenderHtmlAsPdf(htmlDocuments[i]);

            // Add to zip archive
            var entry = zipArchive.CreateEntry($"document_{i + 1}.pdf");
            using (var entryStream = entry.Open())
            {
                pdf.Stream.CopyTo(entryStream);
            }
        }
    }
}
Imports System.IO.Compression

' Batch export multiple PDFs to a zip file
Public Sub ExportMultiplePdfsAsZip(htmlDocuments As List(Of String), zipFilePath As String)
    Using zipArchive = ZipFile.Open(zipFilePath, ZipArchiveMode.Create)
        Dim renderer = New ChromePdfRenderer()

        For i As Integer = 0 To htmlDocuments.Count - 1
            ' Render each HTML document
            Dim pdf As PdfDocument = renderer.RenderHtmlAsPdf(htmlDocuments(i))

            ' Add to zip archive
            Dim entry = zipArchive.CreateEntry($"document_{i + 1}.pdf")
            Using entryStream = entry.Open()
                pdf.Stream.CopyTo(entryStream)
            End Using
        Next
    End Using
End Sub
$vbLabelText   $csharpLabel

Exportação condicional baseada em permissões do usuário

// Export with different options based on user role
public byte[] ExportPdfWithPermissions(string htmlContent, UserRole userRole)
{
    var renderer = new ChromePdfRenderer();
    PdfDocument pdf = renderer.RenderHtmlAsPdf(htmlContent);

    // Apply security based on user role
    if (userRole == UserRole.Guest)
    {
        // Restrict printing and copying for guests
        pdf.SecuritySettings.AllowUserPrinting = false;
        pdf.SecuritySettings.AllowUserCopyPasteContent = false;
    }
    else if (userRole == UserRole.Standard)
    {
        // Allow printing but not editing
        pdf.SecuritySettings.AllowUserPrinting = true;
        pdf.SecuritySettings.AllowUserEditing = false;
    }

    return pdf.BinaryData;
}
// Export with different options based on user role
public byte[] ExportPdfWithPermissions(string htmlContent, UserRole userRole)
{
    var renderer = new ChromePdfRenderer();
    PdfDocument pdf = renderer.RenderHtmlAsPdf(htmlContent);

    // Apply security based on user role
    if (userRole == UserRole.Guest)
    {
        // Restrict printing and copying for guests
        pdf.SecuritySettings.AllowUserPrinting = false;
        pdf.SecuritySettings.AllowUserCopyPasteContent = false;
    }
    else if (userRole == UserRole.Standard)
    {
        // Allow printing but not editing
        pdf.SecuritySettings.AllowUserPrinting = true;
        pdf.SecuritySettings.AllowUserEditing = false;
    }

    return pdf.BinaryData;
}
' Export with different options based on user role
Public Function ExportPdfWithPermissions(htmlContent As String, userRole As UserRole) As Byte()
    Dim renderer As New ChromePdfRenderer()
    Dim pdf As PdfDocument = renderer.RenderHtmlAsPdf(htmlContent)

    ' Apply security based on user role
    If userRole = UserRole.Guest Then
        ' Restrict printing and copying for guests
        pdf.SecuritySettings.AllowUserPrinting = False
        pdf.SecuritySettings.AllowUserCopyPasteContent = False
    ElseIf userRole = UserRole.Standard Then
        ' Allow printing but not editing
        pdf.SecuritySettings.AllowUserPrinting = True
        pdf.SecuritySettings.AllowUserEditing = False
    End If

    Return pdf.BinaryData
End Function
$vbLabelText   $csharpLabel

Melhores práticas para exportação de PDF

Ao exportar PDFs em aplicações de produção, considere estas boas práticas:

  1. Gerenciamento de memória : Para PDFs grandes ou aplicativos com alto tráfego, descarte adequadamente os objetos e fluxos do PDF para evitar vazamentos de memória. Considere usar os métodos async para obter melhor desempenho.
  2. Tratamento de erros : Sempre implemente um tratamento de erros adequado ao exportar PDFs, especialmente em aplicações web onde podem ocorrer problemas de rede.
  3. Compressão : Para PDFs grandes, utilize a compressão para comprimir PDF e reduzir o tamanho do arquivo antes de disponibilizá-lo aos usuários.
  4. Metadados : Defina metadados apropriados para o PDF, incluindo título, autor e data de criação, para uma melhor gestão do documento.
  5. Compatibilidade entre plataformas : Garanta que sua funcionalidade de exportação funcione em diferentes plataformas. O IronPDF suporta Windows, Linux e macOS.

Conclusão

O IronPDF oferece opções abrangentes para exportar e converter PDF em aplicativos C#, desde simples salvamentos de arquivos até cenários complexos de servidores web. Utilizar o método de exportação adequado ao seu caso de uso permite gerar e entregar documentos PDF aos seus usuários de forma eficiente, mantendo os padrões de segurança e desempenho.

Perguntas frequentes

Como faço para exportar conteúdo HTML para PDF em C#?

Você pode exportar HTML para PDF em C# usando a classe ChromePdfRenderer do IronPDF. Basta criar uma instância do renderizador, usar o método RenderHtmlAsPdf() para converter seu conteúdo HTML e, em seguida, salvá-lo usando o método SaveAs(). O IronPDF facilita a conversão de strings HTML, arquivos ou URLs diretamente em documentos PDF.

Quais são os diferentes métodos para salvar um PDF usando C#?

O IronPDF oferece vários métodos para salvar PDFs: SaveAs() para salvar em disco, Stream para disponibilizar PDFs em aplicações web sem criar arquivos temporários e BinaryData para obter o PDF como um array de bytes. Cada método do IronPDF atende a diferentes casos de uso, desde o simples armazenamento de arquivos até a distribuição dinâmica via web.

Posso salvar um PDF na memória em vez de no disco?

Sim, o IronPDF permite salvar PDFs na memória usando System.IO.MemoryStream. Isso é útil para aplicações web onde você deseja disponibilizar PDFs diretamente aos usuários sem criar arquivos temporários no servidor. Você pode usar a propriedade Stream ou converter o PDF em dados binários.

Como faço para adicionar proteção por senha ao salvar um PDF?

O IronPDF permite a proteção por senha definindo a propriedade Password no objeto PdfDocument antes de salvar. Basta atribuir uma senha a pdf.Password e usar SaveAs() para criar um arquivo PDF protegido que exige a senha para ser aberto.

Posso disponibilizar um PDF diretamente nos navegadores da web sem salvá-lo no disco?

Sim, o IronPDF permite que você forneça PDFs diretamente para navegadores da web como dados binários. Você pode usar a propriedade BinaryData para obter o PDF como uma matriz de bytes e fornecê-lo através do fluxo de resposta do seu aplicativo web, eliminando a necessidade de armazenamento temporário de arquivos.

Qual a maneira mais simples de converter e salvar HTML como PDF em uma única linha?

O IronPDF oferece uma solução de uma linha: `new IronPDF.ChromePdfRenderer().RenderHtmlAsPdf("Seu HTML").SaveAs("output.pdf").` Isso cria um renderizador, converte o HTML em PDF e o salva em disco em uma única instrução.

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
Analisado por
Jeff Fritz
Jeffrey T. Fritz
Gerente de Programa Principal - Equipe da Comunidade .NET
Jeff também é Gerente de Programa Principal das equipes do .NET e do Visual Studio. Ele é o produtor executivo da série de conferências virtuais .NET Conf e apresenta o "Fritz and Friends", uma transmissão ao vivo para desenvolvedores que vai ao ar duas vezes por semana, onde ele conversa sobre tecnologia e escreve código junto com os espectadores. Jeff cria workshops, apresentações e planeja conteúdo para os maiores eventos de desenvolvedores da Microsoft, incluindo o Microsoft Build, o Microsoft Ignite, a .NET Conf e o Microsoft MVP Summit.
Pronto para começar?
Nuget Downloads 18,318,263 | Versão: 2026.4 acaba de ser lançado
Still Scrolling Icon

Ainda está rolando a tela?

Quer provas rápidas? PM > Install-Package IronPdf
executar um exemplo Veja seu HTML se transformar em um PDF.