跳至頁尾內容
C# + VB.NET: HTML 或圖像檔案轉為 PDF HTML 或圖像檔案轉為 PDF
using IronPdf;

// Instantiate Renderer
var renderer = new ChromePdfRenderer();

// Create a PDF from an existing HTML file using C#
var pdf = renderer.RenderHtmlFileAsPdf("example.html");

// Export to a file or Stream
pdf.SaveAs("output.pdf");
Imports IronPdf

' Instantiate Renderer
Private renderer = New ChromePdfRenderer()

' Create a PDF from an existing HTML file using C#
Private pdf = renderer.RenderHtmlFileAsPdf("example.html")

' Export to a file or Stream
pdf.SaveAs("output.pdf")
Install-Package IronPdf

IronPDF是一個強大的.NET程式庫,可以將HTML檔案轉換成高品質的PDF檔案。 使用IronPDF,您只需數行程式碼就可以將HTML文件渲染為PDF,並且由於支援現代網頁標準,生成的PDF文件將達到像素完美。 利用IronPDF強大的HTML文件轉PDF功能很簡單,因為它使用ChromePdfRenderer類別,輕鬆處理HTML到PDF的轉換。

此程式碼建立了一個從HTML文件渲染而來的新PDF文件。要完成此操作,首先必須確保IronPDF程式庫已安裝並通過ChromePdfRenderer類別,該類別提供了渲染HTML內容為PDF的功能。 此類別確保HTML文件的原始品質在轉換過程中不會丟失。

RenderHtmlFileAsPdf方法將現有HTML文件轉換為PDF。 在此範例中,HTML文件"example.html"被傳遞給方法,建立一個PDF物件。 最後,為了保存生成的PDF,請使用SaveAs方法,指定所需的文件名稱和位置。 這個簡單的過程使您能夠輕鬆地在C#應用程式中從HTML文件生成PDF。

學習使用IronPDF將HTML文件轉換為PDF

C# + VB.NET: using HTML 建立 PDF using HTML 建立 PDF
using IronPdf;

// Disable local disk access or cross-origin requests
Installation.EnableWebSecurity = true;

// Instantiate Renderer
var renderer = new ChromePdfRenderer();

// Create a PDF from a HTML string using C#
var pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>");

// Export to a file or Stream
pdf.SaveAs("output.pdf");

// Advanced Example with HTML Assets
// Load external html assets: Images, CSS and JavaScript.
// An optional BasePath 'C:\site\assets\' is set as the file location to load assets from
var myAdvancedPdf = renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", @"C:\site\assets\");
myAdvancedPdf.SaveAs("html-with-assets.pdf");
Imports IronPdf

' Disable local disk access or cross-origin requests
Installation.EnableWebSecurity = True

' Instantiate Renderer
Dim renderer = New ChromePdfRenderer()

' Create a PDF from a HTML string using C#
Dim pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>")

' Export to a file or Stream
pdf.SaveAs("output.pdf")

' Advanced Example with HTML Assets
' Load external html assets: Images, CSS and JavaScript.
' An optional BasePath 'C:\site\assets\' is set as the file location to load assets from
Dim myAdvancedPdf = renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", "C:\site\assets\")
myAdvancedPdf.SaveAs("html-with-assets.pdf")
Install-Package IronPdf

使用IronPDF,您可以在.NET專案中從簡單的HTML字串建立新的PDF文件,並且IronPDF可以在C#、F#和VB.NET中使用。 感謝使用ChromePdfRenderer類,您可以確保從HTML字串轉換的任何PDF文件將會完美無瑕 通過IronPDF強大的HTML轉PDF功能,您可以根據個人需求建立高品質的PDF文件。

請參考下方的程式碼範例以了解更多細節:

將HTML字串轉換為PDF的第一步是確保您已正確設定IronPDF程式庫,並使其在專案中正常運作。 通過包含using IronPdf,我們確保可以從IronPDF程式庫中存取所需的類,以進行HTML到PDF的轉換。 下一行Installation.EnableWebSecurity = true在概念上用於禁用本地磁碟存取或跨來源請求,確保安全操作。 (Note: This line was missing from the example but usually pertains to configuration settings to secure PDF rendering operations.)

範例展示了如何建立ChromePdfRenderer的實例,該實例處理HTML到PDF的轉換。 The RenderHtmlAsPdf method is used to convert a simple HTML string ("<h1>Hello World</h1>") into a PDF document. 此文件使用SaveAs方法保存到磁碟中。

在高級範例中,IronPDF展示了如何處理包含外部資產(如圖片、CSS和JavaScript)的HTML內容。 為了載入這些資產,可以使用可選的BasePath參數,指定包含所需文件的目錄。 包括外部資產的結果PDF使用相同的SaveAs方法保存。 此程式碼範例強調了IronPDF可處理簡單和複雜HTML內容的能力,使其成為一個有效的程式生成PDF的工具。

學習使用IronPDF將HTML字串轉換為C#中的PDF

C# + VB.NET: 將網址轉換為 PDF 將網址轉換為 PDF
using IronPdf;

// Instantiate Renderer
var renderer = new ChromePdfRenderer();

// Create a PDF from a URL or local file path
var pdf = renderer.RenderUrlAsPdf("https://ironpdf.com/");

// Export to a file or Stream
pdf.SaveAs("url.pdf");
Imports IronPdf

' Instantiate Renderer
Private renderer = New ChromePdfRenderer()

' Create a PDF from a URL or local file path
Private pdf = renderer.RenderUrlAsPdf("https://ironpdf.com/")

' Export to a file or Stream
pdf.SaveAs("url.pdf")
Install-Package IronPdf

IronPDF使得從現有URL生成HTML為PDF文件變得非常簡便。 對JavaScript、圖片、表單和CSS的支援水平非常高。

從接受查詢字串變數的ASP.NET URL生成PDF,可以促進設計師和程式設計師之間的流暢協作PDF開發。


了解如何使用IronPDF將URL轉換為PDF

C# + VB.NET: 將 ASPX 頁面渲染為 PDF 將 ASPX 頁面渲染為 PDF
using IronPdf;

private void Form1_Load(object sender, EventArgs e)
{
    //Changes the ASPX output into a pdf instead of HTML
    IronPdf.AspxToPdf.RenderThisPageAsPdf();
}
Imports IronPdf

Private Sub Form1_Load(ByVal sender As Object, ByVal e As EventArgs)
	'Changes the ASPX output into a pdf instead of HTML
	IronPdf.AspxToPdf.RenderThisPageAsPdf()
End Sub
Install-Package IronPdf

使用IronPDF程式庫,只需在Form_Load事件中新增一行程式碼即可將ASP.NET網頁轉換為PDF而不是HTML。

此範例顯示如何使用IronPDF產生複雜且以資料驅動的PDF,這些PDF首先被設計和測試為HTML,簡化了過程。

IronPDF的ASPX至PDF轉換功能允許您在ASPX頁面內調用一個方法,並返回PDF而非HTML。

您可以編碼PDF以顯示在"瀏覽器中",或作為文件下載。

學習如何使用IronPDF將ASPX頁面渲染為PDF

C# + VB.NET: PDF 產生設定 PDF 產生設定
using IronPdf;
using IronPdf.Engines.Chrome;

// Instantiate Renderer
var renderer = new ChromePdfRenderer();

// Many rendering options to use to customize!
renderer.RenderingOptions.SetCustomPaperSizeInInches(12.5, 20);
renderer.RenderingOptions.PrintHtmlBackgrounds = true;
renderer.RenderingOptions.PaperOrientation = IronPdf.Rendering.PdfPaperOrientation.Landscape;
renderer.RenderingOptions.Title = "My PDF Document Name";
renderer.RenderingOptions.EnableJavaScript = true;
renderer.RenderingOptions.WaitFor.RenderDelay(50); // in milliseconds
renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Screen;
renderer.RenderingOptions.FitToPaperMode = FitToPaperModes.Zoom;
renderer.RenderingOptions.Zoom = 100;
renderer.RenderingOptions.CreatePdfFormsFromHtml = true;

// Supports margin customization!
renderer.RenderingOptions.MarginTop = 40; //millimeters
renderer.RenderingOptions.MarginLeft = 20; //millimeters
renderer.RenderingOptions.MarginRight = 20; //millimeters
renderer.RenderingOptions.MarginBottom = 40; //millimeters

// Can set FirstPageNumber if you have a cover page
renderer.RenderingOptions.FirstPageNumber = 1; // use 2 if a cover page will be appended

// Settings have been set, we can render:
renderer.RenderHtmlFileAsPdf("assets/wikipedia.html").SaveAs("output/my-content.pdf");
Imports IronPdf
Imports IronPdf.Engines.Chrome

' Instantiate Renderer
Dim renderer As New ChromePdfRenderer()

' Many rendering options to use to customize!
renderer.RenderingOptions.SetCustomPaperSizeInInches(12.5, 20)
renderer.RenderingOptions.PrintHtmlBackgrounds = True
renderer.RenderingOptions.PaperOrientation = IronPdf.Rendering.PdfPaperOrientation.Landscape
renderer.RenderingOptions.Title = "My PDF Document Name"
renderer.RenderingOptions.EnableJavaScript = True
renderer.RenderingOptions.WaitFor.RenderDelay(50) ' in milliseconds
renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Screen
renderer.RenderingOptions.FitToPaperMode = FitToPaperModes.Zoom
renderer.RenderingOptions.Zoom = 100
renderer.RenderingOptions.CreatePdfFormsFromHtml = True

' Supports margin customization!
renderer.RenderingOptions.MarginTop = 40 ' millimeters
renderer.RenderingOptions.MarginLeft = 20 ' millimeters
renderer.RenderingOptions.MarginRight = 20 ' millimeters
renderer.RenderingOptions.MarginBottom = 40 ' millimeters

' Can set FirstPageNumber if you have a cover page
renderer.RenderingOptions.FirstPageNumber = 1 ' use 2 if a cover page will be appended

' Settings have been set, we can render:
renderer.RenderHtmlFileAsPdf("assets/wikipedia.html").SaveAs("output/my-content.pdf")
Install-Package IronPdf

IronPDF旨在為開發者提供最大的靈活性。

在此C# PDF生成教程範例中,我們展示了一個能夠自動內部功能與提供控制的API之間的平衡。

IronPDF支持許多針對生成PDF文件的自訂化,包括頁面大小、頁面邊距、頁首/頁尾內容、內容縮放、CSS規則集和JavaScript執行。


我們希望開發者能夠控制Chrome如何將網頁轉換成PDF。 ChromePdfRenderer 類別概覽使這成為可能。

ChromePdfRenderer類中的設定範例包括頁邊距、頁首、頁尾、紙張大小和表單建立的設定。

  • 上述程式碼範例展示了如何使用IronPDF程式庫從網頁建立PDF文件。
  • 這涉及到使用特定選項如紙張大小、邊距、頁首和頁尾來設置renderer
  • 使用render將URL轉換為PDF。
  • 然後將生成的PDF文件儲存為名為"output.pdf"的文件。

探索使用IronPDF的像素完美HTML到PDF指南

C# + VB.NET: ASPX 轉 PDF 設定 ASPX 轉 PDF 設定
using IronPdf;

var PdfOptions = new IronPdf.ChromePdfRenderOptions()
{
    CreatePdfFormsFromHtml = true,
    EnableJavaScript = false,
    Title = "My ASPX Page Rendered as a PDF"
    //.. many more options available
};

AspxToPdf.RenderThisPageAsPdf(AspxToPdf.FileBehavior.Attachment, "MyPdfFile.pdf", PdfOptions);
Imports IronPdf

Private PdfOptions = New IronPdf.ChromePdfRenderOptions() With {
	.CreatePdfFormsFromHtml = True,
	.EnableJavaScript = False,
	.Title = "My ASPX Page Rendered as a PDF"
}

AspxToPdf.RenderThisPageAsPdf(AspxToPdf.FileBehavior.Attachment, "MyPdfFile.pdf", PdfOptions)
Install-Package IronPdf
C# + VB.NET: 圖片轉 PDF 圖片轉 PDF
using IronPdf;
using System.IO;
using System.Linq;

// One or more images as IEnumerable. This example selects all JPEG images in a specific 'assets' folder.
var imageFiles = Directory.EnumerateFiles("assets").Where(f => f.EndsWith(".jpg") || f.EndsWith(".jpeg"));

// Converts the images to a PDF and save it.
ImageToPdfConverter.ImageToPdf(imageFiles).SaveAs("composite.pdf");

// Also see PdfDocument.RasterizeToImageFiles() method to flatten a PDF to images or thumbnails
Imports IronPdf
Imports System.IO
Imports System.Linq

' One or more images as IEnumerable. This example selects all JPEG images in a specific 'assets' folder.
Private imageFiles = Directory.EnumerateFiles("assets").Where(Function(f) f.EndsWith(".jpg") OrElse f.EndsWith(".jpeg"))

' Converts the images to a PDF and save it.
ImageToPdfConverter.ImageToPdf(imageFiles).SaveAs("composite.pdf")

' Also see PdfDocument.RasterizeToImageFiles() method to flatten a PDF to images or thumbnails
Install-Package IronPdf

給定一張位於電腦上 C:\images\example.png 的單一圖片,您可以通過調用 IronPdf.ImageToPdfConverter.ImageToPdf 方法並使用其檔案路徑,快速將其轉換為PDF文件:

您也可以使用 CombineImagesIntoPdfImageToPdfConverter 將多張圖片轉換為單一PDF文件:

要瞭解有關使用IronPDF將圖像轉換為PDF以增強您的應用程式的更多資訊,或要探索Iron Software提供的整套開發工具,包括IronBarcode、IronOCR等,請造訪Iron Software網站

學習使用IronPDF將圖片轉換為PDF

System.IO.Directory.EnumerateFiles

ImageToPdfConverter.ImageToPdf

C# + VB.NET: 頁首與頁尾 頁首與頁尾
using IronPdf;

// Initiate PDF Renderer
var renderer = new ChromePdfRenderer();

// Add a header to every page easily
renderer.RenderingOptions.FirstPageNumber = 1; // use 2 if a cover page  will be appended
renderer.RenderingOptions.TextHeader.DrawDividerLine = true;
renderer.RenderingOptions.TextHeader.CenterText = "{url}";
renderer.RenderingOptions.TextHeader.Font = IronSoftware.Drawing.FontTypes.Helvetica;
renderer.RenderingOptions.TextHeader.FontSize = 12;
renderer.RenderingOptions.MarginTop = 25; //create 25mm space for header

// Add a footer too
renderer.RenderingOptions.TextFooter.DrawDividerLine = true;
renderer.RenderingOptions.TextFooter.Font = IronSoftware.Drawing.FontTypes.Arial;
renderer.RenderingOptions.TextFooter.FontSize = 10;
renderer.RenderingOptions.TextFooter.LeftText = "{date} {time}";
renderer.RenderingOptions.TextFooter.RightText = "{page} of {total-pages}";
renderer.RenderingOptions.MarginTop = 25; //create 25mm space for footer

// Mergeable fields are:
// {page} {total-pages} {url} {date} {time} {html-title} & {pdf-title}
Imports IronPdf

' Initiate PDF Renderer
Private renderer = New ChromePdfRenderer()

' Add a header to every page easily
renderer.RenderingOptions.FirstPageNumber = 1 ' use 2 if a cover page  will be appended
renderer.RenderingOptions.TextHeader.DrawDividerLine = True
renderer.RenderingOptions.TextHeader.CenterText = "{url}"
renderer.RenderingOptions.TextHeader.Font = IronSoftware.Drawing.FontTypes.Helvetica
renderer.RenderingOptions.TextHeader.FontSize = 12
renderer.RenderingOptions.MarginTop = 25 'create 25mm space for header

' Add a footer too
renderer.RenderingOptions.TextFooter.DrawDividerLine = True
renderer.RenderingOptions.TextFooter.Font = IronSoftware.Drawing.FontTypes.Arial
renderer.RenderingOptions.TextFooter.FontSize = 10
renderer.RenderingOptions.TextFooter.LeftText = "{date} {time}"
renderer.RenderingOptions.TextFooter.RightText = "{page} of {total-pages}"
renderer.RenderingOptions.MarginTop = 25 'create 25mm space for footer

' Mergeable fields are:
' {page} {total-pages} {url} {date} {time} {html-title} & {pdf-title}
Install-Package IronPdf

有兩種方法可以將頁眉和頁尾新增到PDF文件中。 它們可以被新增為經典的文字格式,並可選擇合併動態資料。 或者,它們可以通過更靈活的HTML格式來新增,允許開發者通過其HTML內容來呈現動態的頁眉和頁尾。

使用IronPDF向PDF新增頁眉和頁尾的步驟

今天我們將看看如何通過簡單的幾個步驟將經典的文字頁眉和頁尾新增到您的PDF文件中。 將自定義的頁眉和頁尾新增到PDF文件的第一步是確保在您的專案中包含了using IronPdf;語句。 然後,實例化ChromePdfRenderer,它提供渲染HTML內容為像素完美的PDF文件的功能。

接下來,配置頁眉設置。 FirstPageNumber屬性允許您指定起始頁碼,如果需要,還可以為封面頁進行調整。 TextHeader屬性可讓您自定義外觀,例如畫分隔線,將文字居中(在這種情況下為文件URL),選擇字體型別和大小,並在頁面頂部為頁眉建立邊距。

配置頁眉後,使用TextFooter屬性設置頁尾。 與頁眉類似,您可以畫分隔線,選擇字體型別和大小,並包括動態內容,如當前日期、時間和頁碼與總頁數。 最後,在頁面底部建立一個邊距來容納頁尾。

通過遵循這些步驟,您可以使用資訊豐富的頁眉和頁尾來增强您的PDF文件,提高其專業性和可讀性。

了解如何使用IronPDF新增頁眉和頁尾

C# + VB.NET: HTML 頁首與頁尾 HTML 頁首與頁尾
using IronPdf;
using System;

// Instantiate Renderer
var renderer = new IronPdf.ChromePdfRenderer();


// Build a footer using html to style the text
// mergeable fields are:
// {page} {total-pages} {url} {date} {time} {html-title} & {pdf-title}
renderer.RenderingOptions.HtmlFooter = new HtmlHeaderFooter()
{
    MaxHeight = 15, //millimeters
    HtmlFragment = "<center><i>{page} of {total-pages}<i></center>",
    DrawDividerLine = true
};

// Use sufficient MarginBottom to ensure that the HtmlFooter does not overlap with the main PDF page content.
renderer.RenderingOptions.MarginBottom = 25; //mm


// Build a header using an image asset
// Note the use of BaseUrl to set a relative path to the assets
renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter()
{
    MaxHeight = 20, //millimeters
    HtmlFragment = "<img src='logo.png'>",
    BaseUrl = new Uri(@"C:\assets\images\").AbsoluteUri
};

// Use sufficient MarginTop to ensure that the HtmlHeader does not overlap with the main PDF page content.
renderer.RenderingOptions.MarginTop = 25; //mm
Imports IronPdf
Imports System

' Instantiate Renderer
Private renderer = New IronPdf.ChromePdfRenderer()


' Build a footer using html to style the text
' mergeable fields are:
' {page} {total-pages} {url} {date} {time} {html-title} & {pdf-title}
renderer.RenderingOptions.HtmlFooter = New HtmlHeaderFooter() With {
	.MaxHeight = 15,
	.HtmlFragment = "<center><i>{page} of {total-pages}<i></center>",
	.DrawDividerLine = True
}

' Use sufficient MarginBottom to ensure that the HtmlFooter does not overlap with the main PDF page content.
renderer.RenderingOptions.MarginBottom = 25 'mm


' Build a header using an image asset
' Note the use of BaseUrl to set a relative path to the assets
renderer.RenderingOptions.HtmlHeader = New HtmlHeaderFooter() With {
	.MaxHeight = 20,
	.HtmlFragment = "<img src='logo.png'>",
	.BaseUrl = (New Uri("C:\assets\images\")).AbsoluteUri
}

' Use sufficient MarginTop to ensure that the HtmlHeader does not overlap with the main PDF page content.
renderer.RenderingOptions.MarginTop = 25 'mm
Install-Package IronPdf

HTML 頁首與頁尾提供了一種靈活的方法,可為您的 PDF 文件建立動態的頁首與頁尾。 透過此方法新增頁首與頁尾,開發人員可完全掌控其樣式呈現,因為這些元素會以獨立的 HTML 文件形式渲染,並能包含專屬的資源檔案與樣式表。

使用 IronPDF 在 PDF 中新增自訂 HTML 頁首與頁尾的步驟

首先,您需要建立 ChromePdfRenderer 類別的實例,該類別負責將 HTML 內容渲染為像素級精準的 PDF 文件。

接著,請使用 HtmlHeaderFooter 類別定義頁尾,其中需指定 MaxHeight、頁尾的 HTML 內容(本例中包含頁碼),以及用於解決圖片的基礎 URL。 頁尾的樣式設定為居中顯示頁面資訊。

為避免頁尾與 PDF 主內容重疊,請使用 MarginBottom 屬性設定底部邊距。 同樣地,請使用 HtmlHeaderFooter 類別建立包含圖片(例如標誌)的標題。 我們已在包含您圖片資源的目錄中設置了 BaseUrl,以確保渲染時能呈現適當的圖片解析度。

最後,請使用 MarginTop 屬性設定頂部邊距,以避免標題與內容重疊。 此範例展示了使用 IronPDF 在 PDF 文件中實作自訂 HTML 頁首與頁尾是多麼簡單。

學習如何使用 IronPDF 為 PDF 文件新增 HTML 頁首與頁尾

C# + VB.NET: 編輯 PDF 檔案 編輯 PDF 檔案
using IronPdf;
using System.Collections.Generic;

// Instantiate Renderer
var renderer = new ChromePdfRenderer();

// Join Multiple Existing PDFs into a single document
var pdfs = new List<PdfDocument>();
pdfs.Add(PdfDocument.FromFile("A.pdf"));
pdfs.Add(PdfDocument.FromFile("B.pdf"));
pdfs.Add(PdfDocument.FromFile("C.pdf"));
var pdf = PdfDocument.Merge(pdfs);
pdf.SaveAs("merged.pdf");

// Add a cover page
pdf.PrependPdf(renderer.RenderHtmlAsPdf("<h1>Cover Page</h1><hr>"));

// Remove the last page from the PDF and save again
pdf.RemovePage(pdf.PageCount - 1);
pdf.SaveAs("merged.pdf");

// Copy pages 5-7 and save them as a new document.
pdf.CopyPages(4, 6).SaveAs("excerpt.pdf");

foreach (var eachPdf in pdfs)
{
    eachPdf.Dispose();
}
Imports IronPdf
Imports System.Collections.Generic

' Instantiate Renderer
Private renderer = New ChromePdfRenderer()

' Join Multiple Existing PDFs into a single document
Private pdfs = New List(Of PdfDocument)()
pdfs.Add(PdfDocument.FromFile("A.pdf"))
pdfs.Add(PdfDocument.FromFile("B.pdf"))
pdfs.Add(PdfDocument.FromFile("C.pdf"))
Dim pdf = PdfDocument.Merge(pdfs)
pdf.SaveAs("merged.pdf")

' Add a cover page
pdf.PrependPdf(renderer.RenderHtmlAsPdf("<h1>Cover Page</h1><hr>"))

' Remove the last page from the PDF and save again
pdf.RemovePage(pdf.PageCount - 1)
pdf.SaveAs("merged.pdf")

' Copy pages 5-7 and save them as a new document.
pdf.CopyPages(4, 6).SaveAs("excerpt.pdf")

For Each eachPdf In pdfs
	eachPdf.Dispose()
Next eachPdf
Install-Package IronPdf

IronPDF提供50+功能來讀取和編輯PDF。 最受歡迎的是合併PDF克隆頁面以及從旋轉內容中提取文字

IronPDF還允許其使用者新增水印、旋轉頁面、新增註釋、數位簽署PDF頁面、建立新的PDF文件、附加封面頁、自定義PDF大小等等,當生成和格式化PDF文件時。 此外,它支持將PDF轉換為所有常見的圖像文件型別,包括JPG、BMP、JPEG、GIF、PNG、TIFF等。

閱讀C# PDF編輯教程來學習如何充分利用IronPDF來修改PDF文件以最符合專案需求。


學習如何使用IronPDF在PDF中新增頁眉和頁腳

C# + VB.NET: 密碼、安全性與元資料 密碼、安全性與元資料
using IronPdf;

// Open an Encrypted File, alternatively create a new PDF from Html
var pdf = PdfDocument.FromFile("encrypted.pdf", "password");

// Get file metadata
System.Collections.Generic.List<string> metadatakeys = pdf.MetaData.Keys(); // returns {"Title", "Creator", ...}

// Remove file metadata
pdf.MetaData.RemoveMetaDataKey("Title");
metadatakeys = pdf.MetaData.Keys(); // return {"Creator", ...} // title was deleted

// Edit file metadata
pdf.MetaData.Author = "Satoshi Nakamoto";
pdf.MetaData.Keywords = "SEO, Friendly";
pdf.MetaData.ModifiedDate = System.DateTime.Now;

// The following code makes a PDF read only and will disallow copy & paste and printing
pdf.SecuritySettings.RemovePasswordsAndEncryption();
pdf.SecuritySettings.MakePdfDocumentReadOnly("secret-key");
pdf.SecuritySettings.AllowUserAnnotations = false;
pdf.SecuritySettings.AllowUserCopyPasteContent = false;
pdf.SecuritySettings.AllowUserFormData = false;
pdf.SecuritySettings.AllowUserPrinting = IronPdf.Security.PdfPrintSecurity.FullPrintRights;

// Change or set the document encryption password
pdf.SecuritySettings.OwnerPassword = "top-secret"; // password to edit the pdf
pdf.SecuritySettings.UserPassword = "sharable"; // password to open the pdf
pdf.SaveAs("secured.pdf");
Imports System
Imports IronPdf

' Open an Encrypted File, alternatively create a new PDF from Html
Private pdf = PdfDocument.FromFile("encrypted.pdf", "password")

' Get file metadata
Private metadatakeys As System.Collections.Generic.List(Of String) = pdf.MetaData.Keys() ' returns {"Title", "Creator", ...}

' Remove file metadata
pdf.MetaData.RemoveMetaDataKey("Title")
metadatakeys = pdf.MetaData.Keys() ' return {"Creator", ...} // title was deleted

' Edit file metadata
pdf.MetaData.Author = "Satoshi Nakamoto"
pdf.MetaData.Keywords = "SEO, Friendly"
pdf.MetaData.ModifiedDate = DateTime.Now

' The following code makes a PDF read only and will disallow copy & paste and printing
pdf.SecuritySettings.RemovePasswordsAndEncryption()
pdf.SecuritySettings.MakePdfDocumentReadOnly("secret-key")
pdf.SecuritySettings.AllowUserAnnotations = False
pdf.SecuritySettings.AllowUserCopyPasteContent = False
pdf.SecuritySettings.AllowUserFormData = False
pdf.SecuritySettings.AllowUserPrinting = IronPdf.Security.PdfPrintSecurity.FullPrintRights

' Change or set the document encryption password
pdf.SecuritySettings.OwnerPassword = "top-secret" ' password to edit the pdf
pdf.SecuritySettings.UserPassword = "sharable" ' password to open the pdf
pdf.SaveAs("secured.pdf")
Install-Package IronPdf

IronPDF為開發者提供強大的PDF安全選項,支援PDF元資料、自訂和設置密碼、權限等。 利用IronPDF的密碼、安全性和元資料選項,您可以建立自訂權限和安全級別,以滿足您的PDF文件需求。 這是透過使用MetaData類別來實現的。 一些選項包括限制PDF文件為不可列印、設置為唯讀,以及128位元加密和密碼保護您的PDF文件。

透過實作MetaData類別來存取各PDF元資料選項,並用您的自訂值設置即可實現自訂元資料的設定。 這包括更改作者、關鍵字、修改日期等。 自訂安全設定包含設置自訂使用者和擁有者密碼、列印權限、唯讀模式等功能。

為了開始自訂PDF文件的安全性,您首先必須載入一個現有的PDF或建立一個新的。 在這裡,我們已經載入了一個具有密碼保護的PDF文件,並輸入了開啟PDF文件所需的密碼。 一旦PDF載入後,我們使用pdf.MetaData.Keys來獲取PDF的當前元資料。 要移除現有的PDF元資料值,使用RemoveMetaDataKey方法。 要開始設定新的元資料值,使用pdf.MetaData.Keywords),然後僅需要分配新值給它。 如ModifiedData字段則需要日期時間資料。

接下來,我們用SecuritySettings類別設置新的安全設定。 如您所見,這裡有各種可以設置的設定。 這讓您對每個您處理的PDF文件的權限和安全級別擁有完全控制權。 要存取這些設定,只需確保使用MakePdfDocumentReadOnly方法將PDF文件設置為唯讀,並使用128位元加密內容。 其他SecuritySettings的選項包括:

  • AllowUserAnnotations: 控制使用者是否可以註解PDF。
  • AllowUserPrinting: 控制文件的列印權限。
  • AllowUserFormData: 設置使用者是否可以填寫表格的權限。
  • OwnerPassword: 設置PDF的擁有者密碼,用於啟用或禁用其他安全設定。
  • UserPassword: 設置PDF的使用者密碼,需要輸入此密碼才能開啟或列印文件。

一旦您已經為您的PDF文件設置了自訂元資料、密碼和安全設定,使用pdf.SaveAs方法將您的PDF保存到指定位置。

學習使用IronPDF處理PDF元資料

C# + VB.NET: PDF 水印 PDF 水印
using IronPdf;

// Stamps a Watermark onto a new or existing PDF
var renderer = new ChromePdfRenderer();

var pdf = renderer.RenderUrlAsPdf("https://www.nuget.org/packages/IronPdf");
pdf.ApplyWatermark("<h2 style='color:red'>SAMPLE</h2>", 30, IronPdf.Editing.VerticalAlignment.Middle, IronPdf.Editing.HorizontalAlignment.Center);
pdf.SaveAs("watermarked.pdf");
Imports IronPdf

' Stamps a Watermark onto a new or existing PDF
Private renderer = New ChromePdfRenderer()

Private pdf = renderer.RenderUrlAsPdf("https://www.nuget.org/packages/IronPdf")
pdf.ApplyWatermark("<h2 style='color:red'>SAMPLE</h2>", 30, IronPdf.Editing.VerticalAlignment.Middle, IronPdf.Editing.HorizontalAlignment.Center)
pdf.SaveAs("watermarked.pdf")
Install-Package IronPdf

IronPDF提供使用HTML為PDF文件新增"水印"的方法。

使用ApplyStamp方法,開發者可以為PDF檔案新增基於HTML的水印。如上例所示,水印的HTML程式碼作為該方法的第一個參數。 ApplyStamp的其他參數控制水印的旋轉、不透明度和位置。

在需要更細緻地控制水印位置時,可以用ApplyWatermark方法。 例如,使用ApplyStamp來:

  • 新增Image或HTML水印到PDFs
  • 將相同的水印應用於PDF的每一頁
  • 將不同的水印應用於特定的PDF頁面
  • 調整水印的位置,以置於頁面文字的前面或後面
  • 更精確地調整水印的不透明度、旋轉和對齊

使用IronPDF應用水印的C#範例程式碼

確保您已在專案中安裝IronPDF程式庫。 您可以在IronPDF NuGet套件頁面找到更詳細的說明。

程式碼說明:

  • 我們首先導入IronPdf程式庫,該程式庫提供了所有PDF操作所需的類和方法。
  • 使用PdfDocument.FromFile建立或載入PDF文件,並指定現有PDF的文件路徑。
  • 定義用于水印的HTML內容。 在本例中,水印顯示"保密"並帶有特定的樣式。
  • 使用ApplyStamp方法將水印覆蓋在PDF上。 此方法允許進行詳細的自訂:
    • rotationDegrees:指定水印的旋轉角度(以度為單位)。
    • top:決定水印的X和Y位置,從左上角測量。
    • opacity:確定水印的透明度。
    • pageRange:指定應該在哪些頁面上新增水印,允許多樣的放置策略。
  • 最後,SaveAs方法將已修改的PDF導出為新文件。

總而言之,IronPDF的ApplyStamp方法允許精確控制使用HTML對PDF文件進行水印新增。 此方法具有靈活性,可滿足不同的自訂需求,包括位置、樣式以及在特定頁面上新增水印。

探索使用IronPDF的自定義水印功能

C# + VB.NET: 背景與前景 背景與前景
using IronPdf;

// With IronPDF, we can easily merge 2 PDF files using one as a background or foreground
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderUrlAsPdf("https://www.nuget.org/packages/IronPdf");
pdf.AddBackgroundPdf(@"MyBackground.pdf");
pdf.AddForegroundOverlayPdfToPage(0, @"MyForeground.pdf", 0);
pdf.SaveAs("complete.pdf");
Imports IronPdf

' With IronPDF, we can easily merge 2 PDF files using one as a background or foreground
Private renderer = New ChromePdfRenderer()
Private pdf = renderer.RenderUrlAsPdf("https://www.nuget.org/packages/IronPdf")
pdf.AddBackgroundPdf("MyBackground.pdf")
pdf.AddForegroundOverlayPdfToPage(0, "MyForeground.pdf", 0)
pdf.SaveAs("complete.pdf")
Install-Package IronPdf

在IronPDF中,您可以選擇使用特定的背景和前景來建立和渲染您的PDF文件。 在這種情況下,您可以使用現有或渲染的PDF作為另一個PDF文件的背景或前景。 這特別有助於設計一致性和模板化。

此範例向您展示如何使用PDF文件作為另一個PDF文件的背景或前景。

您可以在C#中通過載入或建立多頁PDF作為IronPdf.PdfDocument物件來完成這一操作。

您可以使用PdfDocument.AddBackgroundPdf新增背景。 有關插入背景方法的更多詳細資訊,請參閱IronPdf.PdfDocument背景文件; 它描述了多種背景插入方法及其覆蓋。 這將為您的工作PDF的每一頁新增背景。 背景是從另一個PDF文件的一頁複製過來的。

您可以使用PdfDocument.AddForegroundOverlayPdfToPage新增前景,也稱為"覆蓋"。 有關前景插入方法的詳細資訊,請查閱IronPdf.PdfDocument覆蓋文件

此程式碼展示了如何使用IronPDF在基本PDF上整合其他設計元素。 若要獲得更先進的技巧和其他選項,請始終參閱官方文件。

探索我們關於新增背景和前景的指南

C# + VB.NET: 表單資料 表單資料
using IronPdf;
using System;

// Step 1.  Creating a PDF with editable forms from HTML using form and input tags
// Radio Button and Checkbox can also be implemented with input type 'radio' and 'checkbox'
const string formHtml = @"
    <html>
        <body>
            <h2>Editable PDF  Form</h2>
            <form>
              First name: <br> <input type='text' name='firstname' value=''> <br>
              Last name: <br> <input type='text' name='lastname' value=''> <br>
              <br>
              <p>Please specify your gender:</p>
              <input type='radio' id='female' name='gender' value= 'Female'>
                <label for='female'>Female</label> <br>
                <br>
              <input type='radio' id='male' name='gender' value='Male'>
                <label for='male'>Male</label> <br>
                <br>
              <input type='radio' id='non-binary/other' name='gender' value='Non-Binary / Other'>
                <label for='non-binary/other'>Non-Binary / Other</label>
              <br>

              <p>Please select all medical conditions that apply:</p>
              <input type='checkbox' id='condition1' name='Hypertension' value='Hypertension'>
              <label for='condition1'> Hypertension</label><br>
              <input type='checkbox' id='condition2' name='Heart Disease' value='Heart Disease'>
              <label for='condition2'> Heart Disease</label><br>
              <input type='checkbox' id='condition3' name='Stoke' value='Stoke'>
              <label for='condition3'> Stoke</label><br>
              <input type='checkbox' id='condition4' name='Diabetes' value='Diabetes'>
              <label for='condition4'> Diabetes</label><br>
              <input type='checkbox' id='condition5' name='Kidney Disease' value='Kidney Disease'>
              <label for='condition5'> Kidney Disease</label><br>
            </form>
        </body>
    </html>";

// Instantiate Renderer
var renderer = new ChromePdfRenderer();
renderer.RenderingOptions.CreatePdfFormsFromHtml = true;
renderer.RenderHtmlAsPdf(formHtml).SaveAs("BasicForm.pdf");

// Step 2. Reading and Writing PDF form values.
var FormDocument = PdfDocument.FromFile("BasicForm.pdf");

// Set and Read the value of the "firstname" field
var FirstNameField = FormDocument.Form.FindFormField("firstname");
FirstNameField.Value = "Minnie";
Console.WriteLine("FirstNameField value: {0}", FirstNameField.Value);

// Set and Read the value of the "lastname" field
var LastNameField = FormDocument.Form.FindFormField("lastname");
LastNameField.Value = "Mouse";
Console.WriteLine("LastNameField value: {0}", LastNameField.Value);

FormDocument.SaveAs("FilledForm.pdf");
Imports IronPdf
Imports System

' Step 1.  Creating a PDF with editable forms from HTML using form and input tags
' Radio Button and Checkbox can also be implemented with input type 'radio' and 'checkbox'
Private Const formHtml As String = "
    <html>
        <body>
            <h2>Editable PDF  Form</h2>
            <form>
              First name: <br> <input type='text' name='firstname' value=''> <br>
              Last name: <br> <input type='text' name='lastname' value=''> <br>
              <br>
              <p>Please specify your gender:</p>
              <input type='radio' id='female' name='gender' value= 'Female'>
                <label for='female'>Female</label> <br>
                <br>
              <input type='radio' id='male' name='gender' value='Male'>
                <label for='male'>Male</label> <br>
                <br>
              <input type='radio' id='non-binary/other' name='gender' value='Non-Binary / Other'>
                <label for='non-binary/other'>Non-Binary / Other</label>
              <br>

              <p>Please select all medical conditions that apply:</p>
              <input type='checkbox' id='condition1' name='Hypertension' value='Hypertension'>
              <label for='condition1'> Hypertension</label><br>
              <input type='checkbox' id='condition2' name='Heart Disease' value='Heart Disease'>
              <label for='condition2'> Heart Disease</label><br>
              <input type='checkbox' id='condition3' name='Stoke' value='Stoke'>
              <label for='condition3'> Stoke</label><br>
              <input type='checkbox' id='condition4' name='Diabetes' value='Diabetes'>
              <label for='condition4'> Diabetes</label><br>
              <input type='checkbox' id='condition5' name='Kidney Disease' value='Kidney Disease'>
              <label for='condition5'> Kidney Disease</label><br>
            </form>
        </body>
    </html>"

' Instantiate Renderer
Private renderer = New ChromePdfRenderer()
renderer.RenderingOptions.CreatePdfFormsFromHtml = True
renderer.RenderHtmlAsPdf(formHtml).SaveAs("BasicForm.pdf")

' Step 2. Reading and Writing PDF form values.
Dim FormDocument = PdfDocument.FromFile("BasicForm.pdf")

' Set and Read the value of the "firstname" field
Dim FirstNameField = FormDocument.Form.FindFormField("firstname")
FirstNameField.Value = "Minnie"
Console.WriteLine("FirstNameField value: {0}", FirstNameField.Value)

' Set and Read the value of the "lastname" field
Dim LastNameField = FormDocument.Form.FindFormField("lastname")
LastNameField.Value = "Mouse"
Console.WriteLine("LastNameField value: {0}", LastNameField.Value)

FormDocument.SaveAs("FilledForm.pdf")
Install-Package IronPdf

您可以使用IronPDF建立可編輯的PDF文件,就像建立普通文件一樣簡單。 PdfForm類是一組使用者可編輯的PDF文件中的表單欄位集合。 它可以被實施到您的PDF渲染中,使其成為表單或可編輯文件。

此範例向您展示如何在IronPDF中建立可編輯的PDF表單。

具有可編輯表單的PDF可以簡單地從HTML建立,只需將

,