如何在 PDF 上添加背景和覆盖前景
添加背景可让您在 PDF 现有内容后面插入图像或其他 PDF 文档作为背景层。这对于创建信头、水印或为文档添加装饰元素非常有用。
覆盖前景可让您在现有 PDF 的顶部放置文本、图像或其他内容,从而有效地将其覆盖。这通常用于在 PDF 上添加注释、印章、签名或其他信息,而不会改变原始内容。
在 IronPdf 中,添加背景和覆盖前景均可使用 PDF 作为背景和前景选项。
如何在 PDF 上添加背景和覆盖前景
- 下载 C# 库,添加背景并覆盖前景
- 将新渲染的或现有的 PDF 文件用作背景或前景
- 使用
AddBackgroundPdf
方法来添加背景 - 使用
AddForegroundOverlayPdf
方法来覆盖前景 - 指定应用背景或前景的页面
开始在您的项目中使用IronPDF,并立即获取免费试用。
查看 IronPDF 上 Nuget 用于快速安装和部署。它有超过800万次下载,正在使用C#改变PDF。
Install-Package IronPdf
考虑安装 IronPDF DLL 直接。下载并手动安装到您的项目或GAC表单中: IronPdf.zip
手动安装到你的项目中
下载DLL添加背景示例
使用 AddBackgroundPdf
方法为新渲染的或现有的 PDF 文档添加背景。下面的代码示例演示了使用 PdfDocument 对象提供该方法。不过,您也可以指定文件路径来自动导入 PDF 文件,并在一行代码中将其添加为背景。
代码
:path=/static-assets/pdf/content-code-examples/how-to/background-foreground-background.cs
using IronPdf;
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Main HTML content</h1>");
// Render background
PdfDocument background = renderer.RenderHtmlAsPdf("<body style='background-color: cyan;'></body>");
// Add background
pdf.AddBackgroundPdf(background);
pdf.SaveAs("addBackground.pdf");
Imports IronPdf
Private renderer As New ChromePdfRenderer()
Private pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Main HTML content</h1>")
' Render background
Private background As PdfDocument = renderer.RenderHtmlAsPdf("<body style='background-color: cyan;'></body>")
' Add background
pdf.AddBackgroundPdf(background)
pdf.SaveAs("addBackground.pdf")
输出 PDF
叠加前景示例
与添加背景类似,您可以指定 PDF 文件路径来导入文档,并将其作为前景覆盖在主 PDF 上。使用 AddForegroundOverlayPdf
方法在主 PDF 文档上叠加前景。
代码
:path=/static-assets/pdf/content-code-examples/how-to/background-foreground-foreground.cs
using IronPdf;
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Main HTML content</h1>");
// Render foreground
PdfDocument foreground = renderer.RenderHtmlAsPdf("<h1 style='transform: rotate(-45deg); opacity: 50%;'>Overlay Watermark</h1>");
// Overlay foreground
pdf.AddForegroundOverlayPdf(foreground);
pdf.SaveAs("overlayForeground.pdf");
Imports IronPdf
Private renderer As New ChromePdfRenderer()
Private pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Main HTML content</h1>")
' Render foreground
Private foreground As PdfDocument = renderer.RenderHtmlAsPdf("<h1 style='transform: rotate(-45deg); opacity: 50%;'>Overlay Watermark</h1>")
' Overlay foreground
pdf.AddForegroundOverlayPdf(foreground)
pdf.SaveAs("overlayForeground.pdf")
输出 PDF
为背景或前景选择页面
我们可以选择 PDF 的哪一页作为背景或前景。让我们以应用背景为例,使用"...... "中的类似代码示例。添加背景示例'部分。我们将生成两页不同颜色的 PDF 文件作为背景。通过在 "AddBackgroundPdf "方法中指定数字 1 作为第二个参数,我们将使用第 2 页作为背景。
提示
代码
:path=/static-assets/pdf/content-code-examples/how-to/background-foreground-background-page-2.cs
using IronPdf;
string backgroundHtml = @"
<div style = 'background-color: cyan; height: 100%;'></div>
<div style = 'page-break-after: always;'></div>
<div style = 'background-color: lemonchiffon; height: 100%;'></div>";
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Main HTML content</h1>");
// Render background
PdfDocument background = renderer.RenderHtmlAsPdf(backgroundHtml);
// Use page 2 as background
pdf.AddBackgroundPdf(background, 1);
pdf.SaveAs("addBackgroundFromPage2.pdf");
Imports IronPdf
Private backgroundHtml As String = "
<div style = 'background-color: cyan; height: 100%;'></div>
<div style = 'page-break-after: always;'></div>
<div style = 'background-color: lemonchiffon; height: 100%;'></div>"
Private renderer As New ChromePdfRenderer()
Private pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Main HTML content</h1>")
' Render background
Private background As PdfDocument = renderer.RenderHtmlAsPdf(backgroundHtml)
' Use page 2 as background
pdf.AddBackgroundPdf(background, 1)
pdf.SaveAs("addBackgroundFromPage2.pdf")
输出 PDF
在指定页面上应用背景或前景
最后,还可以在单个页面或多个页面上应用背景或前景。这一操作需要使用稍有不同的方法名称。使用 AddBackgroundPdfToPage
和 AddForegroundOverlayPdfToPage
方法可分别为 PDF 的单个特定页面添加背景和覆盖前景。
提示
单页申请
:path=/static-assets/pdf/content-code-examples/how-to/background-foreground-single-page.cs
using IronPdf;
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Main HTML content</h1>");
// Render background
PdfDocument background = renderer.RenderHtmlAsPdf("<body style='background-color: cyan;'></body>");
// Add background to page 1
pdf.AddBackgroundPdfToPage(0, background);
pdf.SaveAs("addBackgroundOnASinglePage.pdf");
Imports IronPdf
Private renderer As New ChromePdfRenderer()
Private pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Main HTML content</h1>")
' Render background
Private background As PdfDocument = renderer.RenderHtmlAsPdf("<body style='background-color: cyan;'></body>")
' Add background to page 1
pdf.AddBackgroundPdfToPage(0, background)
pdf.SaveAs("addBackgroundOnASinglePage.pdf")
使用 AddBackgroundPdfToPageRange
和 AddForegroundOverlayPdfToPageRange
方法分别为多个页面应用背景和前景。
在多个页面上应用
:path=/static-assets/pdf/content-code-examples/how-to/background-foreground-multiple-pages.cs
using IronPdf;
using System.Collections.Generic;
string html = @"<p> This is 1st Page </p>
<div style = 'page-break-after: always;'></div>
<p> This is 2nd Page</p>
<div style = 'page-break-after: always;'></div>
<p> This is 3rd Page</p>";
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf(html);
// Render background
PdfDocument background = renderer.RenderHtmlAsPdf("<body style='background-color: cyan;'></body>");
// Create list of pages
List<int> pages = new List<int>() { 0, 2 };
// Add background to page 1 & 3
pdf.AddBackgroundPdfToPageRange(pages, background);
pdf.SaveAs("addBackgroundOnMultiplePage.pdf");
Imports IronPdf
Imports System.Collections.Generic
Private html As String = "<p> This is 1st Page </p>
<div style = 'page-break-after: always;'></div>
<p> This is 2nd Page</p>
<div style = 'page-break-after: always;'></div>
<p> This is 3rd Page</p>"
Private renderer As New ChromePdfRenderer()
Private pdf As PdfDocument = renderer.RenderHtmlAsPdf(html)
' Render background
Private background As PdfDocument = renderer.RenderHtmlAsPdf("<body style='background-color: cyan;'></body>")
' Create list of pages
Private pages As New List(Of Integer)() From {0, 2}
' Add background to page 1 & 3
pdf.AddBackgroundPdfToPageRange(pages, background)
pdf.SaveAs("addBackgroundOnMultiplePage.pdf")