如何使用虚拟视口和缩放
在 HTML 到 PDF 的渲染过程中,视口在决定如何在生成的 PDF 文档中捕捉网页布局方面起着至关重要的作用。具体来说,它指的是浏览器应将网页渲染到的虚拟屏幕尺寸。
缩放,在 HTML 到 PDF 的渲染中,指的是网页内容在 PDF 文档中的缩放。微调缩放级别的功能为调整生成的 PDF 中内容的大小提供了一种方法,可确保其与所需的布局和格式保持一致。
如何使用虚拟视口和缩放
开始在您的项目中使用IronPDF,并立即获取免费试用。
查看 IronPDF 上 Nuget 用于快速安装和部署。它有超过800万次下载,正在使用C#改变PDF。
Install-Package IronPdf
考虑安装 IronPDF DLL 直接。下载并手动安装到您的项目或GAC表单中: IronPdf.zip
手动安装到你的项目中
下载DLL适合纸张模式
访问 RenderingOptions(渲染选项)中的 PaperFit 字段可调用预设方法,该方法可用于特定的渲染类型和模式。让我们通过渲染著名的维基百科页面来比较,详细了解每种 PaperFit 模式。
Chrome 浏览器默认渲染
以与在 Google Chrome 浏览器打印预览中相同的方式显示 PDF 页面。此方法可配置呈现选项,以模仿从 Google Chrome 浏览器的打印预览中打印时的网页外观。指定纸张尺寸的响应 CSS 视口将根据该纸张尺寸的宽度进行解释。请使用 UseChromeDefaultRendering
方法进行配置。
:path=/static-assets/pdf/content-code-examples/how-to/viewport-zoom-default-chrome.cs
using IronPdf;
ChromePdfRenderer renderer = new ChromePdfRenderer();
// Chrome default rendering
renderer.RenderingOptions.PaperFit.UseChromeDefaultRendering();
// Render web URL to PDF
PdfDocument pdf = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Main_Page");
pdf.SaveAs("chromeDefault.pdf");
Imports IronPdf
Private renderer As New ChromePdfRenderer()
' Chrome default rendering
renderer.RenderingOptions.PaperFit.UseChromeDefaultRendering()
' Render web URL to PDF
Dim pdf As PdfDocument = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Main_Page")
pdf.SaveAs("chromeDefault.pdf")
响应式 CSS 渲染
在响应式 CSS 模式下,可以通过向 UseResponsiveCssRendering
方法传递一个值来指定视口宽度。默认视口宽度为 1280 像素。您可能已经注意到,视口单位是基于像素的,代表响应式 CSS 设计的虚拟浏览器视口。
响应式 CSS 用于根据ViewPortWidth参数定义 HTML 的渲染,缩放内容以适应指定纸张大小的宽度。
:path=/static-assets/pdf/content-code-examples/how-to/viewport-zoom-responsive-css.cs
using IronPdf;
ChromePdfRenderer renderer = new ChromePdfRenderer();
// Responsive CSS rendering
renderer.RenderingOptions.PaperFit.UseResponsiveCssRendering(1280);
// Render web URL to PDF
PdfDocument pdf = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Main_Page");
pdf.SaveAs("responsiveCss.pdf");
Imports IronPdf
Private renderer As New ChromePdfRenderer()
' Responsive CSS rendering
renderer.RenderingOptions.PaperFit.UseResponsiveCssRendering(1280)
' Render web URL to PDF
Dim pdf As PdfDocument = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Main_Page")
pdf.SaveAs("responsiveCss.pdf")
缩放渲染
UseScaledRendering"(使用缩放渲染)方法会采用一种布局,模仿 "Chrome 浏览器打印预览 "在指定纸张尺寸下的行为。它还提供了一个额外的缩放级别,开发人员可以手动调整。该方法可根据输入的缩放百分比缩放内容。
:path=/static-assets/pdf/content-code-examples/how-to/viewport-zoom-scaled.cs
using IronPdf;
ChromePdfRenderer renderer = new ChromePdfRenderer();
// Scaled rendering
renderer.RenderingOptions.PaperFit.UseScaledRendering(180);
// Render web URL to PDF
PdfDocument pdf = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Main_Page");
pdf.SaveAs("scaled.pdf");
Imports IronPdf
Private renderer As New ChromePdfRenderer()
' Scaled rendering
renderer.RenderingOptions.PaperFit.UseScaledRendering(180)
' Render web URL to PDF
Dim pdf As PdfDocument = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Main_Page")
pdf.SaveAs("scaled.pdf")
适合页面渲染
与此相反,"适合页面 "渲染会根据指定的纸张大小对内容进行缩放。它会在呈现后测量 HTML 内容的最小宽度,并尽可能将其缩放至适合一张纸的宽度。可配置的最小像素宽度被用作文档基于像素的最小宽度,以确保正确显示和响应 CSS3 布局规则。
:path=/static-assets/pdf/content-code-examples/how-to/viewport-zoom-fit-to-page.cs
using IronPdf;
ChromePdfRenderer renderer = new ChromePdfRenderer();
// Fit to page rendering
renderer.RenderingOptions.PaperFit.UseFitToPageRendering();
// Render web URL to PDF
PdfDocument pdf = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Main_Page");
pdf.SaveAs("fitToPage.pdf");
Imports IronPdf
Private renderer As New ChromePdfRenderer()
' Fit to page rendering
renderer.RenderingOptions.PaperFit.UseFitToPageRendering()
' Render web URL to PDF
Dim pdf As PdfDocument = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Main_Page")
pdf.SaveAs("fitToPage.pdf")
连续进纸渲染
连续进纸渲染可创建单页 PDF,强制要求整个内容的宽度和高度适合在一页上,因此适用于消费账单或收据等文档。PDF 页面的默认宽度为 80.0 毫米,默认页边距为 5 毫米。
使用 "宽度 "和 "页边距 "参数自定义页面宽度和页边距的功能提供了灵活性,使其成为创建简洁的单页文档的便捷选择。
:path=/static-assets/pdf/content-code-examples/how-to/viewport-zoom-continuous-feed.cs
using IronPdf;
ChromePdfRenderer renderer = new ChromePdfRenderer();
// Continuous feed rendering
renderer.RenderingOptions.PaperFit.UseContinuousFeedRendering();
// Render web URL to PDF
PdfDocument pdf = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Main_Page");
pdf.SaveAs("continuousFeed.pdf");
Imports IronPdf
Private renderer As New ChromePdfRenderer()
' Continuous feed rendering
renderer.RenderingOptions.PaperFit.UseContinuousFeedRendering()
' Render web URL to PDF
Dim pdf As PdfDocument = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Main_Page")
pdf.SaveAs("continuousFeed.pdf")