How to Use Web Assets & Optimize PDFs in C# for Performance
Com mais de 100 funcionalidades, o IronPDF foi projetado para simplificar as tarefas de geração e manipulação de PDFs para desenvolvedores .NET . Esta biblioteca é uma solução completa para todas as suas necessidades em PDF, eliminando a necessidade de instalar ferramentas de terceiros ou o Adobe Acrobat.
Um aspecto crucial abordado pelo IronPDF é o seu amplo suporte a recursos da web. Essas ferramentas permitem o uso integrado de HTML, JavaScript, fontes da web e muito mais em seus documentos PDF. Com isso, você pode criar documentos PDF verdadeiramente únicos.
O IronPDF também oferece um desempenho impressionante na geração e no trabalho com arquivos PDF. Isso garante operações tranquilas com PDFs sem sobrecarregar o sistema, especialmente ao trabalhar com tarefas que exigem alto desempenho, como comprimir PDF, processar grandes lotes, arquivos grandes e muito mais.
Guia rápido: Integre recursos da Web, comprima e otimize PDFs com eficiência
Este guia de início rápido demonstra como aprimorar seus PDFs adicionando recursos da web, como imagens e fontes, usando o IronPDF. Com apenas algumas linhas de código, você pode melhorar significativamente o desempenho e a qualidade visual de seus documentos PDF, além de comprimir PDF para reduzir o tamanho do arquivo. Seja para incorporar o logotipo da empresa ou fontes personalizadas, o IronPDF torna o processo rápido e simples, garantindo que seus PDFs sejam otimizados e visualmente atraentes.
-
Instale IronPDF com o Gerenciador de Pacotes NuGet
PM > Install-Package IronPdf -
Copie e execute este trecho de código.
var pdf = new IronPdf.ChromePdfRenderer().RenderHtmlAsPdf("<h1>Hello Performance</h1>"); pdf.Flatten(); pdf.CompressAndSaveAs("fast-optimized.pdf", 50); -
Implante para testar em seu ambiente de produção.
Comece a usar IronPDF em seu projeto hoje com uma avaliação gratuita
Índice
- Suporte a ativos da Web
- Depurar HTML com o Chrome
- CSS (Tela e Impressão)
- Imagens (jpg, png, svg, gif, etc)
- JavaScript (Atrasos de renderização personalizados)
- Use WaitFor para atrasar a renderização do PDF
- Fontes (Web e Ícones)
- Usar gráficos SVG
- Gerenciar fontes
- Suporte a UTF-8 e idiomas internacionais
- URLs base e codificação de ativos
- Renderizar sites WebGL
- Mecanismo de renderização de PDF do Chrome Desempenho e Compressão
- Compressão de PDF
- Assíncrono e Multithreading
- Registro personalizado
- Aplanar PDFs
- Visualização e impressão de PDFs
- Conclusão
Incorpore recursos da Web em seus PDFs.
O suporte robusto do IronPDF para recursos da web oferece aos desenvolvedores controle total sobre a aparência de seus documentos PDF. Desde o suporte abrangente para HTML, CSS e JavaScript, que permite a renderização perfeita de conteúdo HTML em PDF, até a capacidade de implementar fontes e imagens personalizadas para elementos visualmente atraentes dentro do documento, o suporte do IronPDF para padrões e recursos da web modernos permite que os desenvolvedores produzam PDFs de alta qualidade e visualmente atraentes sem esforço.
Trabalhando com conteúdo web dinâmico
Vamos começar explorando como o IronPDF simplifica o processo de criação de documentos PDF a partir de conteúdo HTML, incluindo estilos CSS e elementos JavaScript . Esse processo descomplicado transmite confiança aos desenvolvedores, que sabem que podem converter facilmente seus recursos da web em PDFs.
Depurar HTML com o Chrome
O poderoso mecanismo de renderização do IronPDF garante a renderização perfeita de qualquer conteúdo HTML. Isso significa que os PDFs gerados a partir de conteúdo HTML terão exatamente a mesma aparência que o HTML em um navegador Chrome, proporcionando uma experiência de renderização confiável e consistente.
:path=/static-assets/pdf/content-code-examples/how-to/pixel-perfect-html-to-pdf-1.cs
// Pixel Perfect HTML Formatting Settings
IronPdf.ChromePdfRenderer renderer = new IronPdf.ChromePdfRenderer();
renderer.RenderingOptions.CssMediaType = PdfCssMediaType.Print; // or Screen
' Pixel Perfect HTML Formatting Settings
Dim renderer As New IronPdf.ChromePdfRenderer()
renderer.RenderingOptions.CssMediaType = PdfCssMediaType.Print ' or Screen
Para uma explicação mais detalhada deste trecho de código e para explorar suas funcionalidades adicionais, consulte nosso guia completo de instruções .
CSS (Tela e Impressão)
O CSS controla o design e o layout do conteúdo HTML. Graças ao suporte para estilização CSS, o IronPDF consegue produzir documentos PDF visualmente atraentes, mantendo o layout e o estilo originais do conteúdo HTML convertido.
:path=/static-assets/pdf/content-code-examples/how-to/html-to-pdf-responsive-css-table-header.cs
using IronPdf;
using IronPdf.Rendering;
ChromePdfRenderer renderer = new ChromePdfRenderer();
// Change the paper size to small
renderer.RenderingOptions.SetCustomPaperSizeinPixelsOrPoints(600, 400);
// Choose screen or print CSS media
renderer.RenderingOptions.CssMediaType = PdfCssMediaType.Print;
// Render HTML to PDF
PdfDocument pdf = renderer.RenderHtmlFileAsPdf("tableHeader.html");
pdf.SaveAs("tableHeader.pdf");
Imports IronPdf
Imports IronPdf.Rendering
Private renderer As New ChromePdfRenderer()
' Change the paper size to small
renderer.RenderingOptions.SetCustomPaperSizeinPixelsOrPoints(600, 400)
' Choose screen or print CSS media
renderer.RenderingOptions.CssMediaType = PdfCssMediaType.Print
' Render HTML to PDF
Dim pdf As PdfDocument = renderer.RenderHtmlFileAsPdf("tableHeader.html")
pdf.SaveAs("tableHeader.pdf")
Para uma explicação mais detalhada deste trecho de código e para explorar suas funcionalidades adicionais, consulte nosso guia completo de instruções .
Imagens (jpg, png, svg, gif, etc)
Aprimore seus PDFs com elementos visuais usando imagens. Ao incorporar imagens em seu documento PDF com o IronPDF, as imagens poderão ser visualizadas sem depender da internet ou de links ativos. Isso significa que você pode adicionar imagens visualmente atraentes para chamar a atenção dos leitores, adicionar imagens que contenham mais informações sobre o tema do seu PDF e muito mais.
:path=/static-assets/pdf/content-code-examples/how-to/add-images-to-pdfs-embed-image.cs
using IronPdf;
ChromePdfRenderer renderer = new ChromePdfRenderer();
string html = @"<img src='https://ironsoftware.com/img/products/ironpdf-logo-text-dotnet.svg'>";
// Render HTML to PDF
PdfDocument pdf = renderer.RenderHtmlAsPdf(html);
// Export PDF
pdf.SaveAs("embedImage.pdf");
Imports IronPdf
Private renderer As New ChromePdfRenderer()
Private html As String = "<img src='https://ironsoftware.com/img/products/ironpdf-logo-text-dotnet.svg'>"
' Render HTML to PDF
Private pdf As PdfDocument = renderer.RenderHtmlAsPdf(html)
' Export PDF
pdf.SaveAs("embedImage.pdf")
Para uma explicação mais detalhada deste trecho de código e para explorar suas funcionalidades adicionais, consulte nosso guia completo de instruções .
JavaScript (Atrasos de renderização personalizados)
Frequentemente, o conteúdo HTML pode conter elementos interativos e dinâmicos que podem ser perdidos durante o processo de conversão com algumas bibliotecas de PDF. O suporte do IronPDF for JavaScript garante que o conteúdo convertido mantenha seus elementos interativos originais.
:path=/static-assets/pdf/content-code-examples/how-to/javascript-to-pdf-render-javascript.cs
using IronPdf;
string htmlWithJavaScript = @"<h1>This is HTML</h1>
<script>
document.write('<h1>This is JavaScript</h1>');
window.ironpdf.notifyRender();
</script>";
// Instantiate Renderer
var renderer = new ChromePdfRenderer();
// Enable JavaScript
renderer.RenderingOptions.EnableJavaScript = true;
// Set waitFor for JavaScript
renderer.RenderingOptions.WaitFor.JavaScript(500);
// Render HTML contains JavaScript
var pdfJavaScript = renderer.RenderHtmlAsPdf(htmlWithJavaScript);
// Export PDF
pdfJavaScript.SaveAs("javascriptHtml.pdf");
Imports IronPdf
Private htmlWithJavaScript As String = "<h1>This is HTML</h1>
<script>
document.write('<h1>This is JavaScript</h1>');
window.ironpdf.notifyRender();
</script>"
' Instantiate Renderer
Private renderer = New ChromePdfRenderer()
' Enable JavaScript
renderer.RenderingOptions.EnableJavaScript = True
' Set waitFor for JavaScript
renderer.RenderingOptions.WaitFor.JavaScript(500)
' Render HTML contains JavaScript
Dim pdfJavaScript = renderer.RenderHtmlAsPdf(htmlWithJavaScript)
' Export PDF
pdfJavaScript.SaveAs("javascriptHtml.pdf")
Para uma explicação mais detalhada deste trecho de código e para explorar suas funcionalidades adicionais, consulte nosso guia completo de instruções .
Use WaitFor para atrasar a renderização do PDF.
Ao renderizar documentos PDF, há momentos em que os recursos necessários ainda não foram obtidos, resultando em uma renderização incompleta. Com o IronPDF, podemos especificar um atraso de renderização para garantir que todos os recursos sejam obtidos antes da renderização.
:path=/static-assets/pdf/content-code-examples/how-to/waitfor-pageload.cs
using IronPdf;
ChromePdfRenderer renderer = new ChromePdfRenderer();
// Render as soon as the page is loaded
renderer.RenderingOptions.WaitFor.PageLoad();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>testing</h1>");
Imports IronPdf
Dim renderer As New ChromePdfRenderer()
' Render as soon as the page is loaded
renderer.RenderingOptions.WaitFor.PageLoad()
Dim pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>testing</h1>")
Para uma explicação mais detalhada deste trecho de código e para explorar suas funcionalidades adicionais, consulte nosso guia completo de instruções .
Fontes (Web e Ícones)
Ao adicionar fontes personalizadas aos seus documentos PDF, você pode criar arquivos PDF verdadeiramente únicos que se adequam às necessidades do tipo de documento que você está criando. O IronPDF simplifica esse processo, permitindo que você capture a atenção dos usuários com tipos de fonte limpos, porém visualmente atraentes, ou utilize fontes da web para garantir a consistência do texto em diferentes máquinas, independentemente da disponibilidade de fontes locais em cada computador.
:path=/static-assets/pdf/content-code-examples/how-to/webfonts-webicons-render-webfont.cs
using IronPdf;
// HTML contains webfont
var html = @"<link href=""https://fonts.googleapis.com/css?family=Lobster"" rel=""stylesheet"">
<p style=""font-family: 'Lobster', serif; font-size:30px;"" > Hello Google Fonts</p>";
ChromePdfRenderer renderer = new ChromePdfRenderer();
// Wait for font to load
renderer.RenderingOptions.WaitFor.AllFontsLoaded(2000);
// Render HTML to PDF
PdfDocument pdf = renderer.RenderHtmlAsPdf(html);
// Export the PDF
pdf.SaveAs("font-test.pdf");
Imports IronPdf
' HTML contains webfont
Private html = "<link href=""https://fonts.googleapis.com/css?family=Lobster"" rel=""stylesheet"">
<p style=""font-family: 'Lobster', serif; font-size:30px;"" > Hello Google Fonts</p>"
Private renderer As New ChromePdfRenderer()
' Wait for font to load
renderer.RenderingOptions.WaitFor.AllFontsLoaded(2000)
' Render HTML to PDF
Dim pdf As PdfDocument = renderer.RenderHtmlAsPdf(html)
' Export the PDF
pdf.SaveAs("font-test.pdf")
Para uma explicação mais detalhada deste trecho de código e para explorar suas funcionalidades adicionais, consulte nosso guia completo de instruções .
Use gráficos SVG
Além de renderizar imagens em PDF, o IronPDF também oferece a capacidade de renderizar gráficos SVG em PDFs.
:path=/static-assets/pdf/content-code-examples/how-to/SVGs-render.cs
using IronPdf;
string html = "<img src='https://ironsoftware.com/img/svgs/new-banner-svg.svg' style='width:100px'>";
ChromePdfRenderer renderer = new ChromePdfRenderer();
renderer.RenderingOptions.WaitFor.RenderDelay(1000);
PdfDocument pdf = renderer.RenderHtmlAsPdf(html);
pdf.SaveAs("svgToPdf.pdf");
Imports IronPdf
Private html As String = "<img src='https://ironsoftware.com/img/svgs/new-banner-svg.svg' style='width:100px'>"
Private renderer As New ChromePdfRenderer()
renderer.RenderingOptions.WaitFor.RenderDelay(1000)
Dim pdf As PdfDocument = renderer.RenderHtmlAsPdf(html)
pdf.SaveAs("svgToPdf.pdf")
Para uma explicação mais detalhada deste trecho de código e para explorar suas funcionalidades adicionais, consulte nosso guia completo de instruções .
Gerenciar fontes
Escolher a fonte correta e poder personalizar e incorporar fontes são aspectos cruciais na criação de PDFs. Com o IronPDF, você pode gerenciar, recuperar e adicionar fontes, tudo em um único pacote, com métodos intuitivos.
:path=/static-assets/pdf/content-code-examples/how-to/manage-font-retrieve-font.cs
using IronPdf;
using IronPdf.Fonts;
using System.Collections.Generic;
// Import PDF
PdfDocument pdf = PdfDocument.FromFile("sample.pdf");
// Retreive font
PdfFontCollection fonts = pdf.Fonts;
Imports IronPdf
Imports IronPdf.Fonts
Imports System.Collections.Generic
' Import PDF
Private pdf As PdfDocument = PdfDocument.FromFile("sample.pdf")
' Retreive font
Private fonts As PdfFontCollection = pdf.Fonts
Para uma explicação mais detalhada deste trecho de código e para explorar suas funcionalidades adicionais, consulte nosso guia completo de instruções .
Suporte a UTF-8 e idiomas internacionais
Graças à sua conformidade com os padrões do Chrome, o IronPDF suporta o uso da codificação UTF-8 em documentos PDF. Isso garante que todos os caracteres utilizados sejam renderizados corretamente, incluindo quaisquer idiomas estrangeiros usados no conteúdo original. Tudo será exibido corretamente no documento PDF final.
:path=/static-assets/pdf/content-code-examples/how-to/utf-8.cs
using IronPdf;
const string html_with_utf_8 =
@"<p>周態告応立待太記行神正用真最。音日独素円政進任見引際初携食。更火識将回興継時億断保媛全職。
文造画念響竹都務済約記求生街東。天体無適立年保輪動元念足総地作靖権瀬内。
失文意芸野画美暮実刊切心。感変動技実視高療試意写表重車棟性作家薄井。
陸瓶右覧撃稿法真勤振局夘決。任堀記文市物第前兜純響限。囲石整成先尾未展退幹販山令手北結。</p>
<p>
أم يذكر النفط قبضتهم على, الصين وفنلندا ما حدى. تم لكل أملاً المنتصر,
٣٠ حدى مارد القوى. شرسة للسيطرة قامفي. حتى أم يطول المحيط,
زهاء وحلفاؤها من فعل. لم قامت الجو الساحلية وتم, ويعزى واقتصار قبل كل.
</p>
<p>
ภคันทลาพาธสตาร์เซฟตี้ แชมป์ มาร์เก็ตติ้งล้มเหลวโยเกิร์ต แลนด์บาบูนอึมครึม รุสโซ แบรนด์ไคลแม็กซ์ พิซซ่าโมเดลเสือโคร่ง ม็อบโซนรายชื่อ
แอดมิชชั่น ด็อกเตอร์ พะเรอ มาร์คเจไดโมจิราสเบอร์รี เอนทรานซ์ออดิชั่นศิลปวัฒนธรรมเปราะบาง โมจิซีเรียสวอลนัตทริปลีเมอร์ ทิป วาไรตี้บิ๊กเมเปิล
</p>";
var renderer = new ChromePdfRenderer();
renderer.RenderingOptions.InputEncoding = System.Text.Encoding.UTF8;
var pdf = renderer.RenderHtmlAsPdf(html_with_utf_8);
pdf.SaveAs("Unicode.pdf");
Imports IronPdf
Private Const html_with_utf_8 As String = "<p>周態告応立待太記行神正用真最。音日独素円政進任見引際初携食。更火識将回興継時億断保媛全職。
文造画念響竹都務済約記求生街東。天体無適立年保輪動元念足総地作靖権瀬内。
失文意芸野画美暮実刊切心。感変動技実視高療試意写表重車棟性作家薄井。
陸瓶右覧撃稿法真勤振局夘決。任堀記文市物第前兜純響限。囲石整成先尾未展退幹販山令手北結。</p>
<p>
أم يذكر النفط قبضتهم على, الصين وفنلندا ما حدى. تم لكل أملاً المنتصر,
٣٠ حدى مارد القوى. شرسة للسيطرة قامفي. حتى أم يطول المحيط,
زهاء وحلفاؤها من فعل. لم قامت الجو الساحلية وتم, ويعزى واقتصار قبل كل.
</p>
<p>
ภคันทลาพาธสตาร์เซฟตี้ แชมป์ มาร์เก็ตติ้งล้มเหลวโยเกิร์ต แลนด์บาบูนอึมครึม รุสโซ แบรนด์ไคลแม็กซ์ พิซซ่าโมเดลเสือโคร่ง ม็อบโซนรายชื่อ
แอดมิชชั่น ด็อกเตอร์ พะเรอ มาร์คเจไดโมจิราสเบอร์รี เอนทรานซ์ออดิชั่นศิลปวัฒนธรรมเปราะบาง โมจิซีเรียสวอลนัตทริปลีเมอร์ ทิป วาไรตี้บิ๊กเมเปิล
</p>"
Private renderer = New ChromePdfRenderer()
renderer.RenderingOptions.InputEncoding = System.Text.Encoding.UTF8
Dim pdf = renderer.RenderHtmlAsPdf(html_with_utf_8)
pdf.SaveAs("Unicode.pdf")
Para uma explicação mais detalhada deste trecho de código e para explorar suas funcionalidades adicionais, consulte nosso guia completo de instruções .
URLs base e codificação de ativos
O IronPDF permite definir um URL base, possibilitando que caminhos relativos em seu HTML, como imagens, CSS ou JavaScript, sejam carregados corretamente ao renderizar para PDF. Você também pode incorporar recursos com codificação base64 para manter tudo autossuficiente e independente da internet.
:path=/static-assets/pdf/content-code-examples/how-to/base-urls-baseurl.cs
using IronPdf;
// Instantiate ChromePdfRenderer
ChromePdfRenderer renderer = new ChromePdfRenderer();
string baseUrl = @"C:\site\assets\";
string html = "<img src='icons/iron.png'>";
// Render HTML to PDF
PdfDocument pdf = renderer.RenderHtmlAsPdf(html, baseUrl);
// Export PDF
pdf.SaveAs("html-with-assets.pdf");
Imports IronPdf
' Instantiate ChromePdfRenderer
Private renderer As New ChromePdfRenderer()
Private baseUrl As String = "C:\site\assets\"
Private html As String = "<img src='icons/iron.png'>"
' Render HTML to PDF
Private pdf As PdfDocument = renderer.RenderHtmlAsPdf(html, baseUrl)
' Export PDF
pdf.SaveAs("html-with-assets.pdf")
Para uma explicação mais detalhada deste trecho de código e para explorar suas funcionalidades adicionais, consulte nosso guia completo de instruções .
Renderizar sites WebGL
WebGL é uma ferramenta comumente usada para criar gráficos 3D interativos, mas convertê-los em um PDF estático pode ser uma tarefa desafiadora. Com o IronPDF, esse processo se torna o mais simples possível, proporcionando aos desenvolvedores facilidade e confiança em sua capacidade de converter recursos complexos da web em PDFs.
:path=/static-assets/pdf/content-code-examples/how-to/render-webgl-render-webgl.cs
using IronPdf;
// Configure IronPdf settings
IronPdf.Installation.SingleProcess = true;
IronPdf.Installation.ChromeGpuMode = IronPdf.Engines.Chrome.ChromeGpuModes.Hardware;
ChromePdfRenderer renderer = new ChromePdfRenderer();
// Set delay before rendering
renderer.RenderingOptions.WaitFor.RenderDelay(5000);
// Render from URL
PdfDocument pdf = renderer.RenderUrlAsPdf("https://docs.mapbox.com/mapbox-gl-js/example/geojson-layer-in-slot/");
pdf.SaveAs("webGL.pdf");
Imports IronPdf
' Configure IronPdf settings
IronPdf.Installation.SingleProcess = True
IronPdf.Installation.ChromeGpuMode = IronPdf.Engines.Chrome.ChromeGpuModes.Hardware
Dim renderer As New ChromePdfRenderer()
' Set delay before rendering
renderer.RenderingOptions.WaitFor.RenderDelay(5000)
' Render from URL
Dim pdf As PdfDocument = renderer.RenderUrlAsPdf("https://docs.mapbox.com/mapbox-gl-js/example/geojson-layer-in-slot/")
pdf.SaveAs("webGL.pdf")
Para uma explicação mais detalhada deste trecho de código e para explorar suas funcionalidades adicionais, consulte nosso guia completo de instruções .
Mecanismo de renderização de PDF do Chrome
O IronPDF utiliza o poderoso mecanismo Chromium, permitindo que os usuários criem PDFs perfeitos em pixels com CSS e JavaScript. Isso cria um cenário "o que você vê é o que você obtém", proporcionando tranquilidade e eliminando quaisquer dúvidas na hora de convertê-los para PDFs. A utilização deste mecanismo garante alta compatibilidade e desempenho na renderização de PDFs.
:path=/static-assets/pdf/content-code-examples/how-to/ironpdf-2021-chrome-rendering-engine-eap-pixel-perfect.cs
using IronPdf;
ChromePdfRenderer renderer = new ChromePdfRenderer();
renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Print;
renderer.RenderingOptions.PrintHtmlBackgrounds = false;
renderer.RenderingOptions.CreatePdfFormsFromHtml = false;
PdfDocument pdf = renderer.RenderUrlAsPdf("https://www.google.com/");
Imports IronPdf
Private renderer As New ChromePdfRenderer()
renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Print
renderer.RenderingOptions.PrintHtmlBackgrounds = False
renderer.RenderingOptions.CreatePdfFormsFromHtml = False
Dim pdf As PdfDocument = renderer.RenderUrlAsPdf("https://www.google.com/")
Para uma explicação mais detalhada deste trecho de código e para explorar suas funcionalidades adicionais, consulte nosso guia completo de instruções .
Desempenho e Compressão
Ao trabalhar com arquivos PDF grandes ou gerar grandes lotes de PDFs, o desempenho é fundamental para um processo tranquilo. É aqui que o IronPDF se destaca, com velocidades de desempenho impressionantes ao trabalhar com PDFs de todos os tamanhos. O IronPDF oferece desempenho consistente e sem problemas para todas as suas tarefas com PDFs.
Nesta seção, vamos analisar mais detalhadamente alguns dos recursos e ferramentas que o IronPDF oferece para garantir um desempenho tranquilo, independentemente das tarefas que você precise executar.
Compressão de PDF
CompressImages, CompressStructTree e Compress(CompressionOptions), estão obsoletos.Comprimir imagens dentro de um PDF é uma maneira prática de reduzir significativamente o tamanho do arquivo de um documento PDF. Arquivos PDF maiores geralmente contêm várias imagens, o que pode aumentar consideravelmente o tamanho total do arquivo. Ao compactar esses arquivos, você facilita o compartilhamento e o armazenamento, economizando tempo e recursos.
:path=/static-assets/pdf/content-code-examples/how-to/pdf-compression-image.cs
using IronPdf;
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Main_Page");
// Compress images in the PDF
pdf.CompressAndSaveAs("compressed.pdf", 40);
Imports IronPdf
Dim renderer As New ChromePdfRenderer()
Dim pdf As PdfDocument = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Main_Page")
' Compress images in the PDF
pdf.CompressAndSaveAs("compressed.pdf", 40)
Se você precisar da saída compactada sem gravar em disco, use CompressPdfToBytes para obter uma matriz de bytes.
byte[] compressed = pdf.CompressPdfToBytes();
byte[] compressed = pdf.CompressPdfToBytes();
Dim compressed As Byte() = pdf.CompressPdfToBytes()
Ou use CompressPdfToStream para obter um fluxo.
using var stream = pdf.CompressPdfToStream();
using var stream = pdf.CompressPdfToStream();
Para uma explicação mais detalhada deste trecho de código e para explorar suas funcionalidades adicionais, consulte nosso guia completo de instruções .
Assíncrono e Multithreading
O IronPDF suporta a geração assíncrona de PDFs usando o método RenderHtmlAsPdfAsync. Este poderoso recurso permite converter HTML em PDF sem afetar o desempenho do seu aplicativo, garantindo resultados consistentes. É vantajoso para lidar com vários documentos ou para integrar-se a APIs web responsivas, oferecendo controle total sobre o desempenho da sua aplicação.
:path=/static-assets/pdf/content-code-examples/how-to/async-async.cs
using IronPdf;
using System.Threading.Tasks;
// Instantiate ChromePdfRenderer
ChromePdfRenderer renderer = new ChromePdfRenderer();
string[] htmlStrings = {"<h1>Html 1</h1>", "<h1>Html 2</h1>", "<h1>Html 3</h1>"};
// Create an array to store the tasks for rendering
var renderingTasks = new Task<PdfDocument>[htmlStrings.Length];
for (int i = 0; i < htmlStrings.Length; i++)
{
int index = i; // Capturing the loop variable
renderingTasks[i] = Task.Run(async () =>
{
// Render HTML to PDF
return await renderer.RenderHtmlAsPdfAsync(htmlStrings[index]);
});
}
// Wait for all rendering tasks to complete
// await Task.WhenAll(renderingTasks);
Imports IronPdf
Imports System.Threading.Tasks
' Instantiate ChromePdfRenderer
Private renderer As New ChromePdfRenderer()
Private htmlStrings() As String = {"<h1>Html 1</h1>", "<h1>Html 2</h1>", "<h1>Html 3</h1>"}
' Create an array to store the tasks for rendering
Private renderingTasks = New Task(Of PdfDocument)(htmlStrings.Length - 1){}
For i As Integer = 0 To htmlStrings.Length - 1
Dim index As Integer = i ' Capturing the loop variable
renderingTasks(i) = Task.Run(Async Function()
' Render HTML to PDF
Return Await renderer.RenderHtmlAsPdfAsync(htmlStrings(index))
End Function)
Next i
' Wait for all rendering tasks to complete
' await Task.WhenAll(renderingTasks);
Para uma explicação mais detalhada deste trecho de código e para explorar suas funcionalidades adicionais, consulte nosso guia completo de instruções .
Registro personalizado
O IronPDF permite o registro personalizado, possibilitando o direcionamento de mensagens de log para o seu logger. Ao definir LoggingMode para LoggingModes.Custom e atribuir seu logger personalizado a CustomLogger, você pode controlar como e onde as mensagens de log são tratadas. Isso é útil para integrar os registros do IronPDF à sua infraestrutura de registro existente.
:path=/static-assets/pdf/content-code-examples/how-to/custom-logging-custom-logging.cs
IronSoftware.Logger.LoggingMode = IronSoftware.Logger.LoggingModes.Custom;
IronSoftware.Logger.CustomLogger = new CustomLoggerClass("logging");
IronSoftware.Logger.LoggingMode = IronSoftware.Logger.LoggingModes.Custom
IronSoftware.Logger.CustomLogger = New CustomLoggerClass("logging")
Para uma explicação mais detalhada deste trecho de código e para explorar suas funcionalidades adicionais, consulte nosso guia completo de instruções .
Aplanar PDFs
O método Flatten no IronPDF é uma ferramenta poderosa que permite criar PDFs interativos e widgets preenchíveis não editáveis para diversas finalidades. Ele achata o PDF, preservando seu layout visual e impedindo qualquer edição posterior, garantindo a integridade de seus documentos.
:path=/static-assets/pdf/content-code-examples/how-to/pdf-image-flatten-csharp-flatten-pdf.cs
using IronPdf;
// Select the desired PDF File
PdfDocument pdf = PdfDocument.FromFile("before.pdf");
// Flatten the pdf
pdf.Flatten();
// Save as a new file
pdf.SaveAs("after_flatten.pdf");
Imports IronPdf
' Select the desired PDF File
Private pdf As PdfDocument = PdfDocument.FromFile("before.pdf")
' Flatten the pdf
pdf.Flatten()
' Save as a new file
pdf.SaveAs("after_flatten.pdf")
Para uma explicação mais detalhada deste trecho de código e para explorar suas funcionalidades adicionais, consulte nosso guia completo de instruções .
Visualização e impressão de PDFs
Imprimir para impressora física
Essa funcionalidade permite aos usuários gerar arquivos PDF em vez de enviar documentos diretamente para uma impressora. Quando o método Print é utilizado, o sistema cria um arquivo PDF que é salvo no computador local. Você também pode especificar uma impressora diferente fornecendo o nome da impressora ao método Print.
:path=/static-assets/pdf/content-code-examples/how-to/print-pdf-print.cs
using IronPdf;
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Test printing</h1>");
// Send the document to "Microsoft Print to PDF" printer
pdf.Print("Microsoft Print to PDF");
Imports IronPdf
Private renderer As New ChromePdfRenderer()
Private pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Test printing</h1>")
' Send the document to "Microsoft Print to PDF" printer
pdf.Print("Microsoft Print to PDF")
Para uma explicação mais detalhada deste trecho de código e para explorar suas funcionalidades adicionais, consulte nosso guia completo de instruções .
Conclusão
O IronPDF oferece aos desenvolvedores .NET a flexibilidade necessária para criar PDFs profissionais e de alta qualidade. Ele integra perfeitamente os recursos modernos da web e oferece desempenho de alto nível. Seja para renderizar conteúdo HTML dinâmico, incorporar fontes e imagens personalizadas ou otimizar a geração de PDFs em larga escala por meio de compressão e multithreading, o IronPDF oferece a flexibilidade e o poder de que você precisa — tudo isso sem dependências externas.
Ao combinar um suporte robusto a recursos com ferramentas focadas em desempenho, como renderização assíncrona e registro personalizado, o IronPDF garante que seus aplicativos permaneçam rápidos, escaláveis e visualmente consistentes. Quer esteja a criar um relatório simples ou um sistema de automação de documentos de nível empresarial, o IronPDF facilita a entrega de documentos PDF bonitos e eficientes sempre.
Agora que você viu o que o IronPDF pode fazer, é hora de começar a criar fluxos de trabalho de PDF mais inteligentes e rápidos em seus projetos .NET .
Perguntas frequentes
Como posso otimizar o desempenho de PDFs usando o IronPDF?
Para otimizar o desempenho de PDFs usando o IronPDF, você pode aproveitar seus recursos de otimização integrados, como o método CompressAndSaveAs para comprimir imagens e remover árvores de estrutura de PDF, além da otimização de fontes. Isso garante que seus PDFs carreguem mais rápido e tenham um desempenho melhor.
O que são recursos da web no contexto da geração de PDFs?
Os recursos da Web referem-se a elementos externos, como imagens, folhas de estilo e scripts, que podem ser incluídos em seus documentos PDF. Com o IronPDF, você pode incorporar facilmente esses recursos para aprimorar os aspectos visuais e funcionais de seus PDFs.
Como adiciono imagens a um PDF usando o IronPDF?
Você pode adicionar imagens a um PDF usando o IronPDF, incorporando-as diretamente no código HTML ou referenciando-as como URLs externas. O IronPDF suporta diversos formatos de imagem, permitindo a inclusão de conteúdo visual rico em seus PDFs.
O IronPDF pode ajudar a reduzir o tamanho dos meus arquivos PDF?
Sim, o IronPDF pode ajudar a reduzir o tamanho dos seus arquivos PDF usando o método CompressAndSaveAs , que comprime imagens incorporadas com uma qualidade JPEG configurável (0–100) e pode, opcionalmente, remover a árvore de estrutura do PDF. Para uso em memória, CompressPdfToBytes e CompressPdfToStream retornam o PDF comprimido sem gravar em disco. Isso resulta em documentos PDF menores e mais fáceis de gerenciar.
Quais recursos o IronPDF oferece para otimizar fontes em um PDF?
O IronPDF oferece recursos para selecionar e comprimir fontes, garantindo que apenas os dados de fonte necessários sejam incluídos no PDF. Isso reduz o tamanho do arquivo e melhora os tempos de carregamento sem comprometer a qualidade do texto.
É possível incluir estilos CSS em PDFs gerados com o IronPDF?
Sim, o IronPDF permite incluir estilos CSS em seus documentos PDF. Você pode incorporar o CSS diretamente no seu HTML ou usar links para folhas de estilo externas para garantir que seus PDFs mantenham uma aparência consistente e profissional.
Como o IronPDF lida com recursos externos em um PDF?
O IronPDF pode integrar recursos externos, como imagens e folhas de estilo, incorporando-os diretamente ou referenciando seus URLs. Isso permite a criação de PDFs dinâmicos e visualmente atraentes que incorporam diversos recursos da web.
Quais são os benefícios de otimizar PDFs com o IronPDF?
A otimização de PDFs com o IronPDF oferece diversas vantagens, incluindo tempos de carregamento mais rápidos, tamanhos de arquivo reduzidos e melhor desempenho do documento. PDFs otimizados também consomem menos largura de banda ao serem compartilhados ou baixados.
Como posso garantir que meu PDF tenha a mesma aparência em diferentes dispositivos usando o IronPDF?
Para garantir consistência entre dispositivos, utilize o suporte do IronPDF para media queries e técnicas de design responsivo em seu HTML e CSS. Isso permite que o PDF adapte seu layout com base no ambiente de visualização.
O .NET 10 está chegando — o IronPDF é compatível e quais benefícios isso traz?
Sim — o IronPDF é totalmente compatível com o .NET 10.

