如何在 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 的哪一页用作我们的背景或前景。 让我们以应用背景为例,使用类似的代码示例从'添加背景示例'section' 我们生成一个两页的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")