IRONSOFTWAREHOME
USANDO O IRONPDF

Comparação de 7 bibliotecas para geração de PDF em C# (ferramentas gratuitas e pagas)

Curtis Chau
Curtis Chau
Updated: 4 de setembro de 2026

A conversão de HTML para PDF no Azure Functions requer o mecanismo de renderização Chrome do IronPDF e a configuração adequada do Azure (nível B1 no mínimo), permitindo transformar qualquer conteúdo HTML — de strings simples a páginas com muito JavaScript — em PDFs perfeitos em pixels, mesmo com as restrições do sandbox do Azure e as limitações do GDI+.

Por que vale a pena aprender a converter HTML para PDF?

Converter conteúdo HTML em documentos PDF em ambientes de nuvem pode ser surpreendentemente desafiador. Se você já tentou implantar um gerador de PDF no Azure Functions, provavelmente se deparou com erros misteriosos relacionados ao GDI+ ou às limitações do ambiente de teste (sandbox). A boa notícia? Com o IronPDF e a configuração correta, você pode converter qualquer conteúdo HTML em arquivos PDF com qualidade de imagem perfeita .

Este tutorial mostra como implantar um conversor de HTML para PDF pronto para produção no Azure Functions usando o IronPDF. Você aprenderá a lidar com tudo, desde strings HTML simples até páginas da web com uso intensivo de JavaScript, enquanto navega pelas restrições exclusivas do ambiente Azure . Quer esteja a criar faturas simples ou relatórios complexos, no final, terá dominado a conversão de HTML para PDF com o IronPDF e o Azure.

Primeiro passo:
arrow pointer

Por que a conversão de HTML para PDF é um desafio no Azure?

Antes de abordarmos a conversão de PDF , vamos entender por que essa tarefa representa um desafio para os desenvolvedores no Azure. Os serviços de aplicativos e sem servidor do Azure são executados em um ambiente de segurança isolado (sandbox) que restringe as operações das quais as bibliotecas de PDF tradicionais dependem:

  • Acesso GDI+ limitado: as chamadas gráficas do Windows são bloqueadas nos níveis inferiores.
  • Limitações na renderização de fontes: fontes personalizadas e fontes SVG estão sujeitas a restrições.
  • Limitações de memória: a conversão de HTML para PDF requer recursos consideráveis.
  • Isolamento de processos: a execução de mecanismos de navegador requer permissões especiais.

Essas restrições são mais rigorosas no plano de Consumo e nos níveis Gratuito/Compartilhado do Azure. Por isso, a conversão bem-sucedida de HTML para PDF requer, no mínimo, uma assinatura do Azure Basic B1 ou Premium. Esses arquivos fornecem as permissões e os recursos necessários para que o mecanismo de renderização do Chrome do IronPDF funcione corretamente. Consulte o guia de implantação do IronPDF no Azure para obter mais informações sobre os níveis de hospedagem do Azure e o desempenho de renderização de PDF .

Qual opção de implantação do Azure funciona melhor para geração de PDFs?

Você tem três opções de implantação ( Windows , Linux ou Container ). Embora o Azure Function App Container seja recomendado, qualquer opção funciona bem.

Hoje vamos nos concentrar na abordagem de contêiner, que fornece um ambiente isolado com configuração mínima e compatibilidade aprimorada com o mecanismo de renderização do IronPDF . Para ambientes especializados como o Azure Government Cloud ou o Azure China, os mesmos princípios se aplicam — basta ajustar os pontos de extremidade de implantação de acordo.

Por que o IronPDF se destaca na conversão de HTML para PDF no Azure?

O IronPDF se destaca no Azure por suas capacidades de conversão de HTML para PDF, graças ao seu mecanismo de renderização Chrome . Não se trata apenas de um analisador HTML básico — é a mesma tecnologia que alimenta o Google Chrome, garantindo que seus documentos PDF sejam exibidos exatamente como seriam em um navegador moderno.

Quais são os recursos mais importantes do mecanismo de renderização do Chrome?

O mecanismo do Chrome traz benefícios cruciais para a conversão de HTML em PDF :

Isso significa que você pode pegar qualquer página da web moderna — completa com estilo Bootstrap , frameworks JavaScript ou visualizações complexas — e convertê-la para PDF sem problemas de compatibilidade. IronPDF lida com a execução de uma instância Headless Chrome no ambiente restrito da Azure. Saiba mais sobre os recursos de renderização do IronPDF no Chrome e a renderização de PDF com perfeição de pixels .

Como configurar seu ambiente Microsoft Azure para conversão de HTML em PDF?

Vamos analisar como configurar um aplicativo de funções do Azure otimizado para conversão de HTML em PDF usando o IronPDF.

Quais são os pré-requisitos para começar?

Antes de começar, certifique-se de que você tem:

  • Uma assinatura ativa do Azure
  • Visual Studio 2022 ou Visual Studio Code
  • SDK do .NET 6.0 ou posterior ( baixe da Microsoft )
  • Ferramentas principais do Azure Functions ( guia de instalação )

Para obter instruções completas de configuração específicas para geração de PDFs no Azure Functions, consulte o tutorial do Azure Functions da IronPDF .

Como faço para criar um aplicativo de funções do Azure?

  1. Acesse o Portal do Azure e clique em "Criar um recurso".

  2. Pesquise por "Aplicativo de Função" e clique em "Criar".

  3. Configure o básico:

    1. Selecione a opção de hospedagem: escolha a que melhor se adapta às suas necessidades.
    2. Assinatura: Selecione sua assinatura do Azure.
    3. Grupo de Recursos: Crie um novo ou selecione um existente.
    4. Nome do aplicativo de funções: Escolha um nome exclusivo.
    5. Publicar: Selecione "Contêiner"
    6. Região: Escolha a sua localização preferida.
  4. Configure o plano de hospedagem:

    1. Clique em "Criar novo" em Plano do Serviço de Aplicativos do Azure.
    2. Nível de preço: Selecione pelo menos o nível B1 (Básico) ou superior.
  5. Lembre-se: os planos Gratuito, Compartilhado e por Consumo não funcionam para renderização de PDF.

  6. Revise e crie seu aplicativo de funções.

Como instalo o IronPDF no meu projeto?

Primeiro, crie um novo projeto Azure Functions no Visual Studio (ou carregue um existente) e adicione o pacote IronPDF.

Para Implantação no Windows:

PM > Install-Package IronPdf

Para Implantação em Contêiner Docker (recomendado)

PM > Install-Package IronPdf.Linux #For Docker Container deployment (recommended)

Para obter instruções detalhadas de instalação, incluindo a configuração de pacotes NuGet e considerações específicas da plataforma, visite o guia de instalação do IronPDF .

Quais configurações são essenciais para o Azure?

Configure seu arquivo .cs do aplicativo de funções para obter a melhor conversão de HTML para PDF :

using IronPdf;
using Microsoft.Azure.Functions.Worker;
using Microsoft.Azure.Functions.Worker.Http;
using Microsoft.Extensions.Logging;
public class HtmlToPdfFunction
{
private readonly ILogger _logger;
public HtmlToPdfFunction(ILoggerFactory loggerFactory)
{
    _logger = loggerFactory.CreateLogger<HtmlToPdfFunction>();
    // Configure IronPDF for Azure
        ConfigureIronPdf();
}
private void ConfigureIronPdf()
{
    // Set your license key (get a trial key from ___PROTECTED_URL_132___
        IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY";
    // Essential Azure configurations
        IronPdf.Installation.LinuxAndDockerDependenciesAutoConfig = true;
        IronPdf.Installation.ChromeGpuMode = IronPdf.Engines.Chrome.ChromeGpuModes.Disabled;
        IronPdf.Installation.CustomDeploymentDirectory = "/tmp";
    // Optional: Enable logging for troubleshooting
        IronPdf.Logging.Logger.LoggingMode = IronPdf.Logging.Logger.LoggingModes.All;
}
}

Como converter strings HTML em PDF?

Vamos começar com o cenário mais comum: converter strings HTML diretamente para PDF . Essa abordagem funciona bem para conteúdo gerado dinamicamente, como faturas , relatórios ou e-mails de confirmação .

Como faço para realizar uma conversão básica de string HTML?

[Function("ConvertHtmlToPdf")]
public async Task<HttpResponseData> ConvertHtmlToPdf(
[HttpTrigger(AuthorizationLevel.Function, "post")] HttpRequestData req,
FunctionContext executionContext)
{
    _logger.LogInformation("Starting HTML to PDF conversion");
try
{
    // Simple HTML invoice example
    string htmlContent = @"
            <!DOCTYPE html>
            <html>
            <head>
                <meta charset='UTF-8'>
                <style>
                    body { font-family: Arial, sans-serif; margin: 40px; }
                    .header { color: #333; border-bottom: 2px solid #0066cc; }
                    .invoice-details { margin: 20px 0; }
                    table { width: 100%; border-collapse: collapse; }
                    th, td { padding: 10px; text-align: left; border-bottom: 1px solid #ddd; }
                    .total { font-weight: bold; font-size: 1.2em; }
                </style>
            </head>
            <body>
                <div class='header'>
                    <h1>Invoice #12345</h1>
                    <p>Date: " + DateTime.Now.ToString("yyyy-MM-dd") + @"</p>
                </div>
                <div class='invoice-details'>
                    <table>
                        <tr>
                            <th>Item</th>
                            <th>Quantity</th>
                        <th>Price</th>
                        </tr>
                        <tr>
                            <td>Professional Services</td>
                            <td>10 hours</td>
                            <td>$1,000.00</td>
                        </tr>
                        <tr>
                            <td colspan='2' class='total'>Total</td>
                            <td class='total'>$1,000.00</td>
                        </tr>
                    </table>
                </div>
            </body>
            </html>";
    // Create Chrome renderer
    var renderer = new ChromePdfRenderer();
    // Configure rendering options
        renderer.RenderingOptions.PaperSize = IronPdf.Rendering.PdfPaperSize.A4;
        renderer.RenderingOptions.MarginTop = 25;
        renderer.RenderingOptions.MarginBottom = 25;
        renderer.RenderingOptions.MarginLeft = 25;
        renderer.RenderingOptions.MarginRight = 25;
    // Convert HTML to PDF
    var pdf = renderer.RenderHtmlAsPdf(htmlContent);
    // Return PDF as response
    var response = req.CreateResponse(HttpStatusCode.OK);
        response.Headers.Add("Content-Type", "application/pdf");
        response.Headers.Add("Content-Disposition", "attachment; filename=invoice.pdf");
    await response.Body.WriteAsync(pdf.BinaryData);
        _logger.LogInformation("PDF generated successfully");
    return response;
}
catch (Exception ex)
{
        _logger.LogError(ex, "Error generating PDF");
    var errorResponse = req.CreateResponse(HttpStatusCode.InternalServerError);
    await errorResponse.WriteStringAsync($"Error: {ex.Message}");
    return errorResponse;
}
}

Isso pega a string HTML fornecida e renderiza em um documento PDF de alta qualidade, completo com as opções de renderização personalizada que configuramos usando a classe RenderingOptions.

Qual é a aparência do arquivo PDF gerado?

PDF viewer displaying a simple invoice (#12345) with one line item for 10 hours of professional services totaling $1,000

Como faço para converter URLs em PDF?

Para páginas web existentes ou aplicações complexas, você pode converter URLs diretamente :

[Function("ConvertUrlToPdf")]
public async Task<HttpResponseData> ConvertUrlToPdf(
    [HttpTrigger(AuthorizationLevel.Function, "post")] HttpRequestData req,
FunctionContext executionContext)
{
var requestBody = await req.ReadAsStringAsync();
var urlRequest = JsonSerializer.Deserialize<UrlRequest>(requestBody);
try
{
    var renderer = new ChromePdfRenderer();
    // Configure for web page rendering
        renderer.RenderingOptions.PaperSize = IronPdf.Rendering.PdfPaperSize.A4;
        renderer.RenderingOptions.PrintHtmlBackgrounds = true;
        renderer.RenderingOptions.CreatePdfFormsFromHtml = true;
    // Enable JavaScript execution (important for dynamic content)
        renderer.RenderingOptions.EnableJavaScript = true;
        renderer.RenderingOptions.RenderDelay = 1000; // Wait for JS to execute
    // Convert URL to PDF
    var pdf = renderer.RenderUrlAsPdf(urlRequest.Url);
    var response = req.CreateResponse(HttpStatusCode.OK);
        response.Headers.Add("Content-Type", "application/pdf");
    await response.Body.WriteAsync(pdf.BinaryData);
    return response;
}
catch (Exception ex)
{
        _logger.LogError(ex, "Error converting URL to PDF");
    throw;
}
}
public class UrlRequest
{
public string Url { get; set; }
}

Qual é a aparência do resultado da conversão de URL?

Vista em tela dividida da página inicial do site da Apple exibindo produtos da família iPhone 16 à esquerda e Apple Watch Series 10 com promoções de troca e Apple Card à direita

Como lidar com conteúdo HTML complexo usando JavaScript?

Aplicações web modernas dependem muito de JavaScript para renderizar conteúdo. Sejam gráficos , formulários dinâmicos ou aplicativos de página única, o mecanismo de renderização do IronPDF lida com todos eles.

Como trabalhar com conteúdo que utiliza muito JavaScript?

Neste exemplo, vamos pegar um arquivo HTML com conteúdo JavaScript e convertê-lo para PDF.

Analytics dashboard displaying company KPIs including $45,200 total revenue, monthly sales trends from January to June, weekly website traffic patterns, and top 4 products performance table

[Function("ConvertComplexHtmlToPdf")]
public async Task<HttpResponseData> ConvertComplexHtmlToPdf(
[HttpTrigger(AuthorizationLevel.Function, "post")] HttpRequestData req,
FunctionContext executionContext)
{
    try
    {
        // Load complex HTML from file
        // [USER TO PROVIDE: complex-dashboard.html with charts and JavaScript]
        string complexHtml = File.ReadAllText("Templates/complex-dashboard.html");
        var renderer = new ChromePdfRenderer();
        // JavaScript-specific configurations
        renderer.RenderingOptions.EnableJavaScript = true;
        renderer.RenderingOptions.WaitFor.JavaScript(3000); // Wait 3 seconds for JS
        // Optional: Set the CSS media type for print or screen styles
        renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Print;
        // Set viewport for responsive designs
        renderer.RenderingOptions.ViewPortWidth = 1920;
        renderer.RenderingOptions.ViewPortHeight = 1080;
        var pdf = renderer.RenderHtmlAsPdf(complexHtml);
        // Add metadata
        pdf.MetaData.Author = "Azure Function";
        pdf.MetaData.CreationDate = DateTime.Now;
        pdf.MetaData.Title = "Complex Dashboard Report";
        var response = req.CreateResponse(HttpStatusCode.OK);
        response.Headers.Add("Content-Type", "application/pdf");
        await response.Body.WriteAsync(pdf.BinaryData);
        return response;
    }
    catch (Exception ex)
    {
        _logger.LogError(ex, "Error with complex HTML conversion");
        throw;
    }
}

Como o conteúdo JavaScript aparece em um PDF?

Company Analytics Dashboard PDF displaying key business metrics including $45,200 total revenue, monthly sales trends, website traffic patterns, and top-performing products table

Como lidar com gráficos e visualizações de dados?

Agora vamos converter um arquivo HTML contendo gráficos :

Bar chart displaying monthly sales data from January to June, showing an overall upward trend with values ranging from $1,200 to $2,400, with June having the highest sales

[Function("ConvertChartToPdf")]
    public async Task<HttpResponseData> ConvertChartToPdf(
    [HttpTrigger(AuthorizationLevel.Function, "post")] HttpRequestData req,
    FunctionContext executionContext)
    {
        try
        {
            // Load chart template
            string chartHtml = File.ReadAllText("Templates/chart-template.html");
            // Replace placeholders with actual data
            var chartData = await GetChartDataAsync();
            chartHtml = chartHtml.Replace("{{CHART_DATA}}", JsonSerializer.Serialize(chartData));
            var renderer = new ChromePdfRenderer();
            // Ensure charts render completely
            renderer.RenderingOptions.EnableJavaScript = true;
            renderer.RenderingOptions.WaitFor.RenderDelay(2000);
            // Set paper orientation for charts
            renderer.RenderingOptions.PaperOrientation = IronPdf.Rendering.PdfPaperOrientation.Landscape;
            var pdf = renderer.RenderHtmlAsPdf(chartHtml);
            var response = req.CreateResponse(HttpStatusCode.OK);
            response.Headers.Add("Content-Type", "application/pdf");
            await response.Body.WriteAsync(pdf.BinaryData);
            return response;
        }
        catch (Exception ex)
        {
            _logger.LogError(ex, "Chart conversion error");
            throw;
        }
    }

Como a visualização de gráficos se apresenta em PDF?

PDF viewer displaying a Monthly Sales Report with a blue bar chart showing sales data from January to June, with values ranging from approximately $1,200 to $2,400

O IronPDF mantém a interatividade original do JavaScript no PDF final gerado .

Como adicionar cabeçalhos e rodapés em HTML?

Arquivos PDF profissionais geralmente exigem cabeçalhos e rodapés consistentes em todas as páginas. O IronPDF simplifica isso com modelos baseados em HTML para opções avançadas de cabeçalho e rodapé .

Como criar cabeçalhos e rodapés dinâmicos?

[Function("ConvertWithHeaderFooter")]
public async Task<HttpResponseData> ConvertWithHeaderFooter(
[HttpTrigger(AuthorizationLevel.Function, "post")] HttpRequestData req,
FunctionContext executionContext)
{
try
{
    string mainContent = @"
            <html>
            <body>
                <h1>Annual Report 2024</h1>
                <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit...</p>
                <!-- Your main content here -->
            </body>
            </html>";
    var renderer = new ChromePdfRenderer();
    // Configure margins to accommodate headers/footers
        renderer.RenderingOptions.MarginTop = 45;
        renderer.RenderingOptions.MarginBottom = 45;
        renderer.RenderingOptions.MarginLeft = 25;
        renderer.RenderingOptions.MarginRight = 25;
    // HTML Header with merge fields
        renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter
    {
        Height = 35,
            HtmlFragment = @"
            <div style='text-align: center; font-size: 12px; padding: 10px;'>
                    <div style='float: left;'>Annual Report 2024</div>
                    <div style='float: right;'>Page {page} of {total-pages}</div>
                    <div style='clear: both;'></div>
                </div>",
            DrawDividerLine = true
    };
    // HTML Footer
        renderer.RenderingOptions.HtmlFooter = new HtmlHeaderFooter
    {
        Height = 30,
            HtmlFragment = @"
                <div style='text-align: center; font-size: 10px; padding: 5px;'>
                    <div>Generated on {date} at {time}</div>
                    <div>© 2024 Your Company. All rights reserved.</div>
                </div>",
            DrawDividerLine = true
    };
    var pdf = renderer.RenderHtmlAsPdf(mainContent);
    var response = req.CreateResponse(HttpStatusCode.OK);
        response.Headers.Add("Content-Type", "application/pdf");
    await response.Body.WriteAsync(pdf.BinaryData);
    return response;
}
catch (Exception ex)
{
        _logger.LogError(ex, "Header/Footer conversion error");
    throw;
}
}
C#

Como os cabeçalhos melhoram a saída em PDF?

Comparação visual demonstrando a diferença entre PDFs com cabeçalhos (esquerda) versus sem cabeçalhos (direita), usando um Relatório Anual 2024 como exemplo

Como faço para aplicar cabeçalhos personalizados a diferentes intervalos de páginas?

public async Task<PdfDocument> CreatePdfWithCustomHeaders(string htmlContent)
{
var renderer = new ChromePdfRenderer();
// First page header (cover page)
    renderer.RenderingOptions.FirstPageNumber = 0; // Cover page is page 0
    renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter
{
    Height = 50,
    HtmlFragment = "<div style='text-align: center; font-size: 24px;'>Company Logo</div>",
        DrawDividerLine = false
};
// Different header for content pages
var pdf = renderer.RenderHtmlAsPdf(htmlContent);
// Apply different headers to specific pages after rendering
for (int i = 1; i < pdf.PageCount; i++)
{
    // Add page-specific content if needed
        pdf.StampHtml(i, @"
        <div style='position: absolute; top: 10px; right: 10px; font-size: 10px;'>
                Section " + GetSectionName(i) + @"
            </div>");
}
return pdf;
}
private string GetSectionName(int pageNumber)
{
// Logic to determine section based on page number
return pageNumber <= 5 ? "Introduction" : "Main Content";
}

Isso aplica seus cabeçalhos a intervalos de páginas PDF especificados.

Quais são os casos de uso mais comuns de conversão de HTML para PDF no Azure?

A versatilidade do IronPDF o torna adequado para diversos usos:

  • Geração de faturas: Converta modelos HTML com dados dinâmicos.
  • Geração de relatórios: Transforme visualizações em PDFs compartilháveis.
  • Criação de certificados: Gere certificados personalizados.
  • Exportação de Documentação: Converta documentos online em PDFs offline .
  • Arquivamento de e-mails: Salve e-mails em HTML mantendo a formatação intacta.
  • Geração de Contratos: Crie documentos a partir de modelos HTML .
  • Materiais de marketing: Converter designs da web em PDFs prontos para impressão .

Como lidar com problemas comuns específicos do Azure?

Mesmo com a configuração adequada, você pode encontrar desafios específicos do Azure. Aqui estão alguns problemas comuns e suas soluções:

Por que minhas fontes não estão sendo exibidas corretamente?

Problema: As fontes personalizadas não estão sendo exibidas corretamente ou estão sendo usadas as fontes do sistema.

Soluções: Os planos de hospedagem compartilhada do Azure restringem o acesso GDI+ necessário para fontes personalizadas . Certifique-se de estar usando pelo menos o nível B1 e incorpore as fontes usando a codificação Base64 .

string htmlWithEmbeddedFont = @"
<style>
    @font-face {
            font-family: 'CustomFont';
        src: url(data:font/woff2;base64,YOUR_BASE64_FONT_HERE) format('woff2');
    }
    body { font-family: 'CustomFont', Arial, sans-serif; }
    </style>";

Para problemas persistentes com fontes, consulte o guia de solução de problemas de fontes do IronPDF .

O que causa erros de configuração "Executar a partir de um arquivo de pacote"?

Problema: O IronPDF não consegue carregar as dependências quando a opção "Executar a partir do arquivo de pacote" está ativada.

Solução: Esta opção cria um ambiente somente leitura, impedindo o IronPDF de extrair os arquivos necessários. Você pode desativar essa opção nas configurações de publicação ou usar o pacote IronPdf.Slim , que lida melhor com esse cenário.

Como lidar com problemas de memória e tempo limite?

Problema: Documentos HTML grandes estão causando timeouts ou exceções de memória.

Solução: Configure as definições de tempo limite e memória adequadas:

// In your Function App configuration
renderer.RenderingOptions.Timeout = 120000; // 2 minutes
renderer.RenderingOptions.RequestContext = new RequestContext
{
    MaxResponseContentBufferSize = 100 * 1024 * 1024 // 100MB
};

Para configurações de tempo limite do Azure Functions, consulte a documentação de tempo limite da Microsoft . Os desenvolvedores também compartilham soluções na tag Azure Functions do Stack Overflow para lidar com o processamento de documentos grandes.

Para obter mais informações sobre cenários de solução de problemas específicos para a conversão de HTML para PDF no Azure, visite a documentação de solução de problemas do Azure da IronPDF .

Como otimizar o desempenho da conversão de HTML para PDF?

A conversão de HTML para PDF pode exigir muitos recursos, dependendo da complexidade do conteúdo. Aqui estão as principais estratégias de otimização para o Azure Functions:

Quando devo usar atrasos de renderização para conteúdo dinâmico?

Ao trabalhar com páginas que utilizam muito JavaScript, configure os atrasos de renderização apropriados:

renderer.RenderingOptions.WaitFor.RenderDelay = 500; // Simple pages
renderer.RenderingOptions.WaitFor.RenderDelay = 2000; // Complex JavaScript

Como gerenciar a memória de forma eficiente?

Para cenários de alto volume, descarte os recursos adequadamente:

using (var renderer = new ChromePdfRenderer())
{
using (var pdf = renderer.RenderHtmlAsPdf(html))
{
    // Process PDF
    return pdf.BinaryData;
}
}

Que estratégias de cache devo usar?

Armazene em cache os PDFs gerados quando o conteúdo não for alterado com frequência:

private static readonly MemoryCache _pdfCache = new MemoryCache(new MemoryCacheOptions
{
SizeLimit = 100 // Limit cache size
});
public async Task<byte[]> GetCachedPdf(string cacheKey, string html)
{
if (!_pdfCache.TryGetValue(cacheKey, out byte[] cachedPdf))
{
    var renderer = new ChromePdfRenderer();
    var pdf = renderer.RenderHtmlAsPdf(html);
    cachedPdf = pdf.BinaryData;
        _pdfCache.Set(cacheKey, cachedPdf, new MemoryCacheEntryOptions
    {
        Size = 1,
        SlidingExpiration = TimeSpan.FromMinutes(10)
    });
}
return cachedPdf;
}

Qual o custo da conversão de HTML para PDF no Azure?

A conversão de HTML para PDF no Azure envolve dois componentes de custo:

Quais são os custos de hospedagem do Azure?

  • Nível Básico (B1): Nível inicial para renderização de PDF, adequado para cargas de trabalho leves.
  • Nível Standard (S1): Melhor desempenho para geração regular de PDFs
  • Nível Premium (P1V2): Recomendado para operações complexas ou de alto volume com PDFs.

Os preços variam conforme a região e mudam com o tempo. Consulte este guia da IronPDF para saber como selecionar o plano mais adequado às suas necessidades.

Quais são as opções de licenciamento do IronPDF ?

Licenciamento IronPDF

O IronPDF oferece diversas opções de licenciamento :

  • Licença de avaliação: Avaliação gratuita de 30 dias para testes
  • Licença Lite: Um único desenvolvedor, um único projeto
  • Licença Plus: Equipes pequenas com múltiplos projetos
  • Licença Profissional: Equipes maiores com direitos de redistribuição
  • Licença ilimitada: Implantação em toda a empresa

Visite a página de licenciamento do IronPDF para obter preços detalhados e comparações de recursos.

Como posso otimizar custos?

  1. Implementar cache: Reduzir a geração redundante de PDFs.
  2. Processamento em lote: Processar vários PDFs em uma única execução de função.
  3. Utilize processamento baseado em filas: Distribua a carga ao longo do tempo para evitar a necessidade de escalonamento.

Que medidas de segurança devo ter em mente?

Embora tenhamos nos concentrado na conversão de HTML para PDF , a segurança é crucial ao lidar com arquivos PDF confidenciais. Para proteger o conteúdo de PDFs contra adulterações indesejadas, saiba mais sobre como proteger suas Azure Functions:

Quais são os principais pontos a serem considerados para uma conversão bem-sucedida de HTML para PDF?

Converter HTML para PDF no Azure não precisa ser complicado. Com o mecanismo de renderização Chrome do IronPDF e a configuração adequada do Azure , você pode transformar qualquer conteúdo HTML em PDFs profissionais.

Principais conclusões para uma conversão bem-sucedida de HTML para PDF no Azure:

O IronPDF oferece mais do que uma simples conversão de HTML para PDF. Este artigo demonstrou suas capacidades para manipulação avançada de PDFs e suporte a imagens em PDFs . O IronPDF se integra facilmente a qualquer aplicativo que você esteja desenvolvendo, incluindo aplicativos de console e aplicativos .NET Core .

Pronto para começar a converter HTML em PDF em seus aplicativos do Azure?

Start using IronPDF in your project today with a free trial.

Primeiro passo:
arrow pointer

Experimente a versão de avaliação gratuita do IronPDF para acessar seus recursos avançados e comece a converter HTML em PDF em seus aplicativos do Azure hoje mesmo!

Para implantações em produção, explore as opções de licenciamento do IronPDF para encontrar o plano que melhor atenda às suas necessidades. Com documentação completa, suporte ágil e atualizações contínuas , o IronPDF oferece tudo o que você precisa para uma conversão confiável de HTML para PDF no Azure Functions e em outras plataformas.

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

...
Leia mais

Artigos relacionados

Key in blue circle

Obtenha sua chave de avaliação gratuita de 30 dias instantaneamente.

Your trial license will be sent to your email address

Sem limitações. 100% desbloqueado. Sem cartão de crédito.

bullet_checkedNão é necessário cartão de crédito nem criação de conta.Sem limitações. 100% desbloqueado. Sem cartão de crédito.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
Agende sua demonstração ao vivo gratuita.
Booking Badge

Aprovado por milhões de engenheiros em todo o mundo.

Logotipos dos clientes da Iron Software
Agende sua consulta sem compromisso.
Preencha o formulário abaixo ou envie um e-mail para sales@ironsoftware.com
Os seus dados serão sempre mantidos em sigilo.
Aprovado por milhões de engenheiros em todo o mundo.
Logotipos dos clientes da Iron Software
Obtenha sua chave de avaliação gratuita de 30 dias instantaneamente.
Não é necessário cartão de crédito nem criação de conta.