如何使用虛擬視口和縮放
在將 HTML 轉換為 PDF 的渲染過程中,視口在決定網頁佈局如何在生成的 PDF 文件中呈現方面起著至關重要的作用。具體來說,它指的是瀏覽器應將網頁渲染成的虛擬屏幕尺寸。
縮放,在 HTML 到 PDF 渲染的上下文中,控制 PDF 文件中網頁內容的比例。微調縮放級別的能力提供了一種調整生成的 PDF 中內容大小的方法,確保其符合您期望的佈局和格式。
如何使用虛擬視口和縮放
- 下載 C# 程式庫以使用虛擬視口和縮放功能
- 使用不同的預設模式將 HTML 轉換為 PDF
- 使用 Chrome 預設和響應式 CSS 模式來實現 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 毫米。
通過使用 'width' 和 'margin' 參數來自定義頁面寬度和邊距的能力提供了靈活性,使其成為創建簡明、單頁文檔的便捷選擇。
: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")