IronPDF 教程 附加功能 How to use Web Assets and Optimize PDFs in C# Kye Stuart 已更新:八月 6, 2025 Download IronPDF NuGet 下载 DLL 下载 Windows 安装程序 Start Free Trial Copy for LLMs Copy for LLMs Copy page as Markdown for LLMs Open in ChatGPT Ask ChatGPT about this page Open in Gemini Ask Gemini about this page Open in Grok Ask Grok about this page Open in Perplexity Ask Perplexity about this page Share Share on Facebook Share on X (Twitter) Share on LinkedIn Copy URL Email article This article was translated from English: Does it need improvement? Translated View the article in English IronPDF拥有超过100项功能,旨在简化.NET开发人员的PDF生成和操作任务。 该库是您所有PDF需求的一站式解决方案,无需安装任何第三方工具或Adobe Acrobat。 IronPDF涵盖的一个重要方面是其对Web资源的广泛支持。 这些工具允许您在PDF文档中无缝使用HTML、JavaScript、Web字体等。 有了这个,您可以创建真正独特的PDF文档。 IronPDF在生成和处理PDF文件时也提供了令人印象深刻的性能。 这确保了在执行性能密集型PDF任务(如处理大批量、大文件等)时,不会对系统造成压力,PDF操作顺畅。 快速入门:高效集成Web资源和优化PDF 这本快速指南演示了如何使用IronPDF通过添加网页资源(如图像和字体)增强您的PDF。 仅需几行代码,您就可以显著提高PDF文档的性能和视觉质量。 无论是嵌入公司标志还是自定义字体,IronPDF使流程快速而简单,确保您的PDF既优化又具有视觉吸引力。 Get started making PDFs with NuGet now: Install IronPDF with NuGet Package Manager PM > Install-Package IronPdf Copy and run this code snippet. new IronPdf.ChromePdfRenderer().RenderHtmlAsPdf("<h1>Hello Performance</h1>").CompressImages(50).Flatten().SaveAs("fast‑optimized.pdf"); Deploy to test on your live environment Start using IronPDF in your project today with a free trial Free 30 day Trial 目录 支持Web资源 用Chrome调试HTML CSS(屏幕和打印) 图像(jpg,png,svg,gif等) JavaScript(自定义渲染延迟) 用WaitFor延迟PDF渲染 字体(网页和图标) 使用SVG图形 管理字体 支持UTF-8和国际语言 基本URL和资产编码 渲染WebGL网站 Chrome PDF渲染引擎 性能及压缩 PDF压缩 异步和多线程 自定义日志记录 扁平化PDF PDF查看及打印 打印到物理打印机 总结 使用 NuGet 安装 PM > Install-Package IronPdf 在 IronPDF 上查看 NuGet 快速安装。超过 1000 万次下载,它正以 C# 改变 PDF 开发。 您也可以下载 DLL 或 Windows 安装程序。 将Web资源实施到您的PDF中 IronPDF对Web资源的强力支持赋予开发人员对PDF文档外观的完全控制权。 从对HTML、CSS和JavaScript的全面支持,使HTML内容像素级完美渲染到PDF,到实现自定义字体和图像以提升文档内的视觉元素,IronPDF对现代Web标准和资源的支持,使开发人员能够轻松制作高质量、视觉吸引力强的PDF。 处理动态Web内容 让我们首先探索IronPDF如何简化从HTML内容(包含CSS样式和JavaScript元素)创建PDF文档的过程。 这一简单的过程使开发人员充满信心,知道他们可以轻松地将网页资源转换为PDF。 用Chrome调试HTML IronPDF的强大渲染引擎确保任何HTML内容的像素级完美渲染。 这意味着您从HTML内容渲染的PDF看起来与在Chrome浏览器中的HTML完全相同,提供可靠且一致的渲染体验。 :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 $vbLabelText $csharpLabel 如需更详细的代码片段说明并探索其附加功能,请参阅我们的综合操作指南。 CSS(屏幕和打印) CSS控制HTML内容的设计和布局。 通过支持CSS样式,IronPDF可以制作视觉上吸引人的PDF文档,同时保持转换HTML内容的原始布局和样式。 :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") $vbLabelText $csharpLabel 有关此代码片段的详细说明及更多功能,您可以查阅我们全面的指南。 图像(jpg,png,svg,gif等) 使用图像增强您的PDF的视觉元素。 当您使用IronPDF将图像嵌入到您的PDF文档中时,图像将不依赖互联网或工作链接即可查看。 这意味着您可以添加视觉吸引人的图像以吸引读者的注意,添加包含更多信息的图像,等等。 :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") $vbLabelText $csharpLabel 有关此代码片段的详细说明及更多功能,您可以查阅我们全面的指南。 JavaScript(自定义渲染延迟) 通常,HTML内容可能包含交互和动态元素,这些元素在某些PDF库转换过程中可能会丢失。 IronPDF对JavaScript的支持确保已转换内容保持其原始的交互元素。 :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") $vbLabelText $csharpLabel 有关此代码片段的详细说明及更多功能,您可以查阅我们全面的指南。 用WaitFor延迟PDF渲染 在渲染PDF文档时,有些时候仍未获取到必要的资产,导致渲染不完整。 使用IronPDF,我们可以指定渲染延迟以确保在渲染之前获得所有资产。 :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>"); IRON VB CONVERTER ERROR developers@ironsoftware.com $vbLabelText $csharpLabel 有关此代码片段的详细说明及更多功能,您可以查阅我们全面的指南。 字体(网页和图标) 通过将自定义字体添加到您的PDF文档中,您可以根据您创建的文档类型创造真正独特的PDF文件。 IronPDF简化了这一过程,允许您使用干净但吸引人的字体类型吸引用户的注意,或者利用网络字体确保不同机器上的文本一致性,无论本地计算机上的字体是否可用。 :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") $vbLabelText $csharpLabel 有关此代码片段的详细说明及更多功能,您可以查阅我们全面的指南。 使用SVG图形 除了将图像渲染为PDF,IronPDF还提供将SVG图形渲染为PDF的能力。 :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") $vbLabelText $csharpLabel 有关此代码片段的详细说明及更多功能,您可以查阅我们全面的指南。 管理字体 选择正确的字体并能够自定义和嵌入字体是创建PDF时的关键方面。 通过IronPDF,您可以通过直观的方法管理、检索和添加字体。 :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 $vbLabelText $csharpLabel 有关此代码片段的详细说明及更多功能,您可以查阅我们全面的指南。 支持UTF-8和国际语言 由于其遵循Chrome标准,IronPDF支持在PDF文档中使用UTF-8编码。 这确保了使用的任何字符都能正确呈现,包括原始内容中使用的任何外语。 所有这些都会在最终的PDF文档中正确渲染。 :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") $vbLabelText $csharpLabel 有关此代码片段的详细说明及更多功能,您可以查阅我们全面的指南。 基本URL和资产编码 IronPDF允许您设置基本URL,使HTML中的相对路径(例如图像、CSS或JavaScript)在渲染为PDF时正确加载。 您还可以使用base64编码嵌入资产,以保持所有内容自包含且无需互联网。 :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") $vbLabelText $csharpLabel 有关此代码片段的详细说明及更多功能,您可以查阅我们全面的指南。 渲染WebGL网站 WebGL是一种常用工具,用于创建交互式3D图形,但将其转换为静态PDF可能是一项具有挑战性的任务。 使用IronPDF,该过程尽可能无缝,使开发人员在转换复杂的网页资产为PDF时感到轻松和自信。 :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") $vbLabelText $csharpLabel 有关此代码片段的详细说明及更多功能,您可以查阅我们全面的指南。 Chrome PDF渲染引擎 IronPDF利用了强大的Chromium引擎,允许用户使用CSS和JavaScript创建像素级完美的PDF。 这创造了一个所见即所得的场景,给您安心,并消除了将它们转换为PDF时的任何疑虑。 使用该引擎确保PDF渲染的高兼容性和性能。 :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/") $vbLabelText $csharpLabel 有关此代码片段的详细说明及更多功能,您可以查阅我们全面的指南。 性能和压缩 处理大PDF文件或生成大量PDF时,性能是平稳过程的关键。 这是IronPDF脱颖而出的地方,在处理所有尺寸的PDF时,其性能速度令人印象深刻。 IronPDF为所有的PDF任务提供一致、流畅的性能。 在本节中,我们将更详细地了解IronPDF提供的一些功能和工具,以确保在需要运行的任务时,性能的顺畅。 PDF压缩 压缩PDF中的图像是显著减少PDF文档文件大小的便捷方式。 较大的PDF文件通常包含多个图像,这会显著增加PDF文件的总体尺寸。通过压缩这些文件,可以更容易地共享和存储,节省时间和资源。 :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.CompressImages(40); pdf.SaveAs("compressed.pdf"); Imports IronPdf Private renderer As New ChromePdfRenderer() Private pdf As PdfDocument = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Main_Page") ' Compress images in the PDF pdf.CompressImages(40) pdf.SaveAs("compressed.pdf") $vbLabelText $csharpLabel 有关此代码片段的详细说明及更多功能,您可以查阅我们全面的指南。 异步和多线程 IronPDF支持异步PDF生成,使用RenderHtmlAsPdfAsync方法。 这一强大功能使您能够在不影响应用程序性能的情况下将HTML转换为PDF,确保结果一致。 这有利于处理多个文档或集成到响应式Web API中,赋予您对应用程序性能的完全控制权。 :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); $vbLabelText $csharpLabel 有关此代码片段的详细说明及更多功能,您可以查阅我们全面的指南。 自定义日志记录 IronPDF允许通过将日志消息路由到您的记录器来实现自定义日志记录。 通过将LoggingMode设置为LoggingModes.Custom并将自定义记录器分配给CustomLogger,您可以控制如何处理日志消息及其位置。 对于将IronPDF日志集成到现有日志基础设施中,这非常有用。 :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") $vbLabelText $csharpLabel 有关此代码片段的详细说明及更多功能,您可以查阅我们全面的指南。 扁平化PDF IronPDF中的Flatten方法是一个强大的工具,允许您将PDF中交互和可填写的小部件变为不可编辑,以实现各种目的。 它会将PDF扁平化,保留其视觉布局,同时防止任何进一步的编辑,确保文件的完整性。 :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") $vbLabelText $csharpLabel 有关此代码片段的详细说明及更多功能,您可以查阅我们全面的指南。 PDF查看和打印 打印到物理打印机 此功能允许用户生成PDF文件,而不是将文档直接发送到打印机。 当使用Print时,系统会创建一个PDF文件并保存在本地计算机上。您还可以通过将打印机名称提供给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") $vbLabelText $csharpLabel 有关此代码片段的详细说明及更多功能,您可以查阅我们全面的指南。 结论 IronPDF为.NET开发人员提供了创建专业、高质量PDF的灵活性。 它无缝集成现代Web资源并提供顶级性能。 无论是渲染动态HTML内容、嵌入自定义字体和图像,还是通过压缩和多线程优化大规模PDF生成,IronPDF都能提供您所需的灵活性和强大功能,无需外部依赖。 通过将丰富的资源支持与注重性能的工具如异步渲染和自定义日志记录结合,IronPDF确保您的应用程序保持快速、可扩展且视觉一致。 无论您是在构建简单的报告还是企业级文档自动化系统,IronPDF都能让您每次轻松地交付美观高效的PDF文档。 现在您已经了解了IronPDF的功能,是时候在您的.NET项目中开始构建更智能、更快速的PDF工作流程了。 常见问题解答 如何使用IronPDF优化PDF性能? 要通过IronPDF优化PDF性能,您可以利用其内置的优化功能,例如压缩图像、减小文件大小和优化字体。这确保了您的PDF加载更快,性能更佳。 PDF生成背景下的网页资产是什么? 网页资产是指可以包含在PDF文档中的外部资源,如图像、样式表和脚本。使用IronPDF,您可以轻松嵌入这些资产,以增强PDF的视觉和功能性。 如何使用IronPDF向PDF中添加图像? 您可以通过直接在HTML源中嵌入图像或引用外部URL的方式,使用IronPDF向PDF中添加图像。IronPDF支持多种图像格式,使PDF具有丰富的视觉内容。 IronPDF能帮助减小我的PDF文件大小吗? 是的,IronPDF可以通过优化图像、删除不必要的元数据以及在可能的情况下压缩内容,帮助减小PDF文件大小。这将生成更小、更易于管理的PDF文档。 IronPDF提供了哪些功能以优化PDF中的字体? IronPDF提供了子集和压缩字体的功能,确保只有必要的字体数据包含在PDF中。这减少了文件大小,提高了加载速度,同时不影响文本质量。 使用IronPDF生成的PDF中可以包括CSS样式吗? 是的,IronPDF允许您将CSS样式包含在您的PDF文档中。您可以直接在HTML中嵌入CSS,或链接到外部样式表,以确保您的PDF保持一致且专业的外观。 IronPDF如何处理PDF中的外部资源? IronPDF可以通过直接嵌入或引用其URL的方式集成外部资源如图像和样式表。这使得PDF能够创建动态和视觉吸引力,融合多种网页资产。 使用IronPDF优化PDF有哪些好处? 使用IronPDF优化PDF提供的好处包括更快的加载时间、减小文件大小和提高文档性能。优化后的PDF在共享或下载时也消耗更少的带宽。 如何确保我的PDF在不同设备上外观一致,使用IronPDF? 为确保跨设备一致性,使用IronPDF支持的媒体查询和响应设计技术集成在HTML和CSS中。这允许PDF根据查看环境调整其布局。 .NET 10 即将到来——IronPDF 是否兼容,以及它能带来哪些好处? 是的——IronPDF 与 .NET 10 完全兼容。 Kye Stuart 立即与工程团队聊天 技术作家 Kye Stuart 在 Iron Software 中将编码热情与写作技能结合在一起。他在 Yoobee 学院接受软件部署教育,现在将复杂的技术概念转化为清晰的教育内容。Kye 重视终身学习,接受新的技术挑战。工作之余,他们喜欢 PC 游戏、Twitch 上的直播,以及户外活动如园艺和带狗 Jaiya 散步。Kye 的直截了当的方法使他们成为 Iron Software 使命的关键,即为全球开发者解密技术。 准备开始了吗? Nuget 下载 16,133,208 | 版本: 2025.11 刚刚发布 免费 NuGet 下载 总下载量:16,133,208 查看许可证