跳至頁尾內容
.NET幫助

C# foreach與索引(對開發者如何理解的工作)

下載網頁是以離線方式存取網站內容的便捷方法。 以PDF格式保存網頁有助於保持頁面的結構,並讓您輕鬆與他人分享。

有很多工具可以讓您將網頁保存為PDF,包括瀏覽器本身,但有時您需要對文件進行更多控制。 在本指南中,我們將說明如何使用功能豐富的C#程式庫IronPDF將網頁轉換為PDF格式,並推薦幾個提供基本功能的替代工具。

將網頁保存為PDF - 入門教學

在Visual Studio中建立您的項目

首先,打開Visual Studio,然後轉到File -> New Project -> Console Application。 輸入您的項目名稱,選擇您想要保存的位置,然後按下一步按鈕。 選擇最新的.NET Framework,然後建立。 一旦您的項目運行起來,就該新增我們的程式庫了。

安裝IronPDF程式庫

IronPDF易於使用,但更容易安裝。 您可以透過幾種方式來做到:

方法1:NuGet Package Manager控制台

在Visual Studio中,在Solution Explorer中,右鍵單擊參考,然後單擊管理NuGet套件。 點擊瀏覽並搜尋'IronPDF',然後安裝最新版本。 如果您看到這個,說明它正在工作:

如何在Mac和Windows上將網頁保存為PDF文件:圖1

您還可以到工具 -> NuGet包管理器 -> 包管理器控制台,在包管理器選項卡中輸入以下行:

Install-Package IronPdf

最後,您可以從NuGet的官方網站直接獲得IronPDF。 從平台右側的選單中選擇下載套件選項,雙擊下載自動安裝,重載解決方案以在您的專案中開始使用它。

未能運作? 您可以在我們的進階NuGet安裝指南中找到特定平台的幫助。

方法2:使用DLL文件

您還可以直接從我們這裡獲得IronPDF DLL文件並手動將其新增到Visual Studio中。 完整說明及Windows、macOS和Linux DLL包的連結,請查閱我們專門的IronPDF安裝指南

新增IronPDF命名空間

一定要記得用IronPDF命名空間開始您的程式碼,如下所示:

using IronPdf;
using IronPdf;
Imports IronPdf
$vbLabelText   $csharpLabel

如何使用IronPDF將網頁保存為PDF

打開Visual Studio,新增IronPDF程式庫後,我們開始實例化ChromePdfRenderer,它提供選項來自訂URL捕捉,包括PDF頁面的版面設定、邊距和方向。 然後,IronPDF使用RenderUrlAsPdf方法將網頁捕捉為PDF。

這是它的樣子:

using IronPdf;

// Instantiate the Chrome PDF Renderer
ChromePdfRenderer renderer = new ChromePdfRenderer()
{
    RenderingOptions = new ChromePdfRenderOptions
    {
        CssMediaType = IronPdf.Rendering.PdfCssMediaType.Screen, // Set how CSS is rendered
        PrintHtmlBackgrounds = true, // Enable printing background colors and images
        EnableJavaScript = true, // Enable JavaScript execution
        GrayScale = false, // Render in color
        PaperOrientation = IronPdf.Rendering.PdfPaperOrientation.Portrait, // Page orientation
        PaperSize = IronPdf.Rendering.PdfPaperSize.A4, // Set paper size
        MarginTop = 0,
        MarginBottom = 0,
        MarginLeft = 0,
        MarginRight = 0,
        UseMarginsOnHeaderAndFooter = IronPdf.UseMargins.None // Control header/footer margins
    }
};

// Use Chrome Default Rendering for sizing content
renderer.RenderingOptions.PaperFit.UseChromeDefaultRendering();

// Convert the webpage to a PDF
var pdf = renderer.RenderUrlAsPdf("https://ironpdf.com/");
using IronPdf;

// Instantiate the Chrome PDF Renderer
ChromePdfRenderer renderer = new ChromePdfRenderer()
{
    RenderingOptions = new ChromePdfRenderOptions
    {
        CssMediaType = IronPdf.Rendering.PdfCssMediaType.Screen, // Set how CSS is rendered
        PrintHtmlBackgrounds = true, // Enable printing background colors and images
        EnableJavaScript = true, // Enable JavaScript execution
        GrayScale = false, // Render in color
        PaperOrientation = IronPdf.Rendering.PdfPaperOrientation.Portrait, // Page orientation
        PaperSize = IronPdf.Rendering.PdfPaperSize.A4, // Set paper size
        MarginTop = 0,
        MarginBottom = 0,
        MarginLeft = 0,
        MarginRight = 0,
        UseMarginsOnHeaderAndFooter = IronPdf.UseMargins.None // Control header/footer margins
    }
};

// Use Chrome Default Rendering for sizing content
renderer.RenderingOptions.PaperFit.UseChromeDefaultRendering();

// Convert the webpage to a PDF
var pdf = renderer.RenderUrlAsPdf("https://ironpdf.com/");
Imports IronPdf

' Instantiate the Chrome PDF Renderer
Private renderer As New ChromePdfRenderer() With {
	.RenderingOptions = New ChromePdfRenderOptions With {
		.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Screen,
		.PrintHtmlBackgrounds = True,
		.EnableJavaScript = True,
		.GrayScale = False,
		.PaperOrientation = IronPdf.Rendering.PdfPaperOrientation.Portrait,
		.PaperSize = IronPdf.Rendering.PdfPaperSize.A4,
		.MarginTop = 0,
		.MarginBottom = 0,
		.MarginLeft = 0,
		.MarginRight = 0,
		.UseMarginsOnHeaderAndFooter = IronPdf.UseMargins.None
	}
}

' Use Chrome Default Rendering for sizing content
renderer.RenderingOptions.PaperFit.UseChromeDefaultRendering()

' Convert the webpage to a PDF
Dim pdf = renderer.RenderUrlAsPdf("https://ironpdf.com/")
$vbLabelText   $csharpLabel

然後,使用SaveAs方法,您可以輕鬆將呈現的URL網頁保存為PDF。

// Save the rendered PDF to a file
pdf.SaveAs("example.pdf");
// Save the rendered PDF to a file
pdf.SaveAs("example.pdf");
' Save the rendered PDF to a file
pdf.SaveAs("example.pdf")
$vbLabelText   $csharpLabel

讓我們來看看結果。 這是IronPDF首頁在Chrome中的樣子:

如何在Mac和Windows上將網頁保存為PDF文件:圖2

這是我們的PDF輸出文件。您可以看到,儘管將方向從橫向改為縱向,網站的結構仍然完整且易於閱讀:

如何在Mac和Windows上將網頁保存為PDF文件:圖3

新增浮水印、密碼和標題到PDF文件

然而,IronPDF的功能不止於此——憑藉我們功能齊全的程式庫,您可以微調和自訂您的展示。

如何使用IronPDF新增浮水印到PDF

本節顯示如何使用ApplyStamp方法文件在PDF中新增作為蓋章圖片的浮水印。

// Add a watermark using an online image
pdf.ApplyStamp(new ImageStamper("https://ironpdf.com/img/products/ironpdf-logo-text-dotnet.svg"));
// Add a watermark using an online image
pdf.ApplyStamp(new ImageStamper("https://ironpdf.com/img/products/ironpdf-logo-text-dotnet.svg"));
' Add a watermark using an online image
pdf.ApplyStamp(New ImageStamper("https://ironpdf.com/img/products/ironpdf-logo-text-dotnet.svg"))
$vbLabelText   $csharpLabel

如何使用IronPDF為PDF新增密碼保護

向PDF新增密碼可以防止未經授權的存取。 您可以為使用者和管理員設定不同的密碼,以允許自訂存取。

// Set a password for the PDF
pdf.Password = "EasyPassword";
// Set a password for the PDF
pdf.Password = "EasyPassword";
' Set a password for the PDF
pdf.Password = "EasyPassword"
$vbLabelText   $csharpLabel

如何使用IronPDF為PDF新增HTML標頭

使用HtmlHeaderFooter物件為您的展示加上最後的點睛之筆。

// Add an HTML-based header to the PDF
renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter()
{
   MaxHeight = 20, // Maximum height in millimeters
   HtmlFragment = "<h1>Headers are easy with IronPDF!</h1>", // Header HTML content
};
// Add an HTML-based header to the PDF
renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter()
{
   MaxHeight = 20, // Maximum height in millimeters
   HtmlFragment = "<h1>Headers are easy with IronPDF!</h1>", // Header HTML content
};
' Add an HTML-based header to the PDF
renderer.RenderingOptions.HtmlHeader = New HtmlHeaderFooter() With {
	.MaxHeight = 20,
	.HtmlFragment = "<h1>Headers are easy with IronPDF!</h1>"
}
$vbLabelText   $csharpLabel

替代的網頁轉PDF工具

使用網頁瀏覽器保存頁面與使用內建的印表功能一樣簡單——您只需在選單中選擇'列印'或按下鍵盤上的印表快捷鍵。 一些在線工具在選擇保存文件時提供PDF選項。

然而,這些選項存在很多不足之處——經常會破壞網頁結構或完全缺少背景圖像。 此外,當您保存為PDF時缺乏像IronPDF那樣的自訂選項。

Google Chrome

Chrome是迄今為止最受歡迎的網頁瀏覽器,全球估計有35億使用者。它擁有眾多功能,並且將網頁導出為PDF是其中之一。

保存為PDF時,Chrome提供了一些基本選項,例如僅保存奇數、偶數或多個頁面、更改紙張尺寸,以及在縱向和橫向之間切換版面。 然而,它可能難以保持網站的結構,經常會完全改變頁面外觀,使其難以閱讀,如下圖所示:

如何在Mac和Windows上將網頁保存為PDF文件:圖4

網頁在Chrome中的顯示方式

如何在Mac和Windows上將網頁保存為PDF文件:圖5

Chrome將網頁呈現為PDF的方式

如何使用Google Chrome將網頁轉換為PDF

——點擊右上角的三點打開Google Chrome下拉選單 ——點擊'列印…'以打開彈出視窗 ——確認目的地為'保存為PDF',然後選擇'保存'

Microsoft Edge

作為Microsoft經典Internet Explorer的繼任者,Edge於2018年更新為在Chromium引擎上運行——使其與Google的Chrome瀏覽器非常相似。 因此,將網頁轉換為PDF的過程幾乎是相同的——其局限性也相同。

如何使用Microsoft Edge保存網頁為PDF

——點擊右上角的三點打開Edge下拉選單 ——點擊'列印…'並選擇'保存為PDF'作為您的印表機 ——選擇'保存'以將網頁導出為PDF

Mozilla Firefox

Firefox是一種側重於安全性和使用者隱私的替代網頁瀏覽器。 它的特點是運行在自己的專用引擎上,而不是Chromium。 然而,在將網頁保存為PDF時,它的工作方式與Chrome和Edge非常相似。 像這些瀏覽器一樣,它在某些頁面的版面上會遇到問題,導致內容無法閱讀。

如何使用Mozilla Firefox保存網頁為PDF

——點擊右上角的漢堡選單按鈕(三條橫線)打開Firefox下拉選單 ——點擊'列印…'並在目的地選單中選擇'保存到PDF' ——選擇'保存'以下載您的PDF

Apple Safari

與Mozilla一樣,Apple使用自己的專用引擎來運行其瀏覽器,並因此與其他選項相比略有不同。 在我們的測試中,Safari產生的PDF文件最精確,但缺乏自訂頁面列印選擇等功能。

如何使用Apple Safari保存網頁為PDF

——在頁面頂部打開文件選單,然後點擊'導出為PDF…' ——選擇一個目的地來保存您的文件,然後點擊'保存'

Soda PDF

Soda PDF是一款免費的在線工具,允許您將網頁轉換為PDF,並提供許多其他功能。 在我們的測試中,它比大多數其他瀏覽器更加精確,但無法載入網頁中的一些圖像。

如何使用Soda PDF轉換PPT為PDF

——存取Soda PDF的在線轉換工具並輸入您想要的網頁URL ——等待工具生成您的PDF ——將會出現一個彈出窗口——選擇您的文件的目的地並點擊'保存'

結論

網頁瀏覽器和在線工具易於使用,並提供一系列基本的編輯功能。 然而,對於更強大的網頁轉PDF轉換工具,IronPDF提供的靈活性是無法媲美的。

而且,網頁到PDF的轉換只是一個開始——憑藉PDF格式設置、內建的安全性和合規性功能等等,IronPDF是您所有PDF文件需求的首選工具。

準備好親身體驗IronPDF了嗎? 您可以開始使用我們的IronPDF的30天免費試用。 它也完全免費用於開發目的,讓您可以真正看到它的價值。 如果您喜歡看到的內容,IronPDF低至$999的實惠價格開始。 為了更大的節省,請查看Iron Suite套裝,您可以用兩個工具的價格獲得所有九款Iron Software工具。 祝開發愉快!

如何在Mac和Windows上將網頁保存為PDF文件:圖6

Curtis Chau
技術作家

Curtis Chau擁有Carleton大學的電腦科學學士學位,專精於前端開發,擁有Node.js、TypeScript、JavaScript和React的專業知識。Curtis熱衷於建立直觀且美觀的使用者介面,喜愛使用現代框架並建立結構良好、視覺吸引力的手冊。

除了開發,Curtis對物聯網(IoT)有濃厚的興趣,探索創新的方法來整合硬體和軟體。在空閒時間,他喜歡玩遊戲和建立Discord機器人,結合他對技術的熱愛與創造力。

Iron 支援團隊

我們線上24小時,每週5天。
聊天
電子郵件
給我打電話