IronPDF 操作指南 添加文字和图像 How to Stamp Text & Image on PDFs Chaknith Bin 已更新:七月 22, 2025 Download IronPDF NuGet 下载 DLL 下载 Windows 安装程序 Start Free Trial Copy for LLMs Copy for LLMs Copy page as Markdown for LLMs Open in ChatGPT Ask ChatGPT about this page Open in Gemini Ask Gemini about this page Open in Grok Ask Grok about this page Open in Perplexity Ask Perplexity about this page Share Share on Facebook Share on X (Twitter) Share on LinkedIn Copy URL Email article This article was translated from English: Does it need improvement? Translated View the article in English 在 PDF 上添加文本和图像涉及将附加内容覆盖在现有 PDF 文档上。 这种内容通常称为“水印”,可以是文本、图像,或两者的组合。 水印通常用于在 PDF 上添加信息、标签、水印或注释。 IronPdf中可以使用总共4个印章。 本文将讨论TextStamper、ImageStamper、HTMLStamper和BarcodeStamper。 HTMLStamper特别强大,因为它可以利用所有HTML特性以及CSS样式。 快速入门:立即在 PDF 上添加文本水印 本快速指南演示如何使用 IronPDF 以最小的努力在 PDF 文件上添加文本水印。 通过利用 TextStamper 类,开发人员可以轻松地向任何 PDF 文档添加文本注释,例如水印或标签。 下面的示例显示了一个使用 ApplyStamp 方法在 PDF 上添加文本水印的简单实现,确保快速高效的水印过程。 Get started making PDFs with NuGet now: Install IronPDF with NuGet Package Manager PM > Install-Package IronPdf Copy and run this code snippet. var pdf = new IronPdf.PdfDocument("input.pdf"); var stamper = new IronPdf.TextStamper("Confidential", 50, 50); pdf.ApplyStamp(stamper); pdf.SaveAs("stamped.pdf"); Deploy to test on your live environment Start using IronPDF in your project today with a free trial Free 30 day Trial class="hsg-featured-snippet"> 最小工作流程(5个步骤) 下载 C# 库以添加文本和图像水印 创建并配置所需的水印类 使用 ApplyStamp 方法将水印应用到 PDF 使用 ApplyMultipleStamps 方法应用多个水印 指定要应用水印的特定页面 文本水印示例 首先,从 TextStamper 类创建一个对象。 该对象将包含所有配置,用于指定我们希望文本水印显示的方式。 将 TextStamper 对象传递给 ApplyStamp 方法。 Text 属性将是显示的文本。 此外,我们可以指定字体系列、字体样式以及水印的位置。 :path=/static-assets/pdf/content-code-examples/how-to/stamp-text-image-stamp-text.cs using IronPdf; using IronPdf.Editing; ChromePdfRenderer renderer = new ChromePdfRenderer(); PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Example HTML Document!</h1>"); // Create text stamper TextStamper textStamper = new TextStamper() { Text = "Text Stamper!", FontFamily = "Bungee Spice", UseGoogleFont = true, FontSize = 30, IsBold = true, IsItalic = true, VerticalAlignment = VerticalAlignment.Top, }; // Stamp the text stamper pdf.ApplyStamp(textStamper); pdf.SaveAs("stampText.pdf"); Imports IronPdf Imports IronPdf.Editing Private renderer As New ChromePdfRenderer() Private pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Example HTML Document!</h1>") ' Create text stamper Private textStamper As New TextStamper() With { .Text = "Text Stamper!", .FontFamily = "Bungee Spice", .UseGoogleFont = True, .FontSize = 30, .IsBold = True, .IsItalic = True, .VerticalAlignment = VerticalAlignment.Top } ' Stamp the text stamper pdf.ApplyStamp(textStamper) pdf.SaveAs("stampText.pdf") $vbLabelText $csharpLabel 输出 PDF 文件 要在 TextStamper 中实现多行文本,请使用 <br> 标签,如同在 HTML 中。 例如,“line 1 line 2” 将在第一行产生“line 1”,在第二行产生“line 2”。 <hr 图像水印示例 类似于文本水印,我们首先从 ImageStamper 类创建一个对象,然后使用 ApplyStamp 方法将图像应用到文档中。 此方法的第二个参数还接受一个页面索引,可以用来将水印应用到一个或多个页面。 在下面的示例中,我们指定图像应在 PDF 的第 1 页上加盖。 {t:(所有页面索引均采用基于零的索引。 :path=/static-assets/pdf/content-code-examples/how-to/stamp-text-image-stamp-image.cs using IronPdf; using IronPdf.Editing; using System; ChromePdfRenderer renderer = new ChromePdfRenderer(); PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Example HTML Document!</h1>"); // Create image stamper ImageStamper imageStamper = new ImageStamper(new Uri("https://ironpdf.com/img/svgs/iron-pdf-logo.svg")) { VerticalAlignment = VerticalAlignment.Top, }; // Stamp the image stamper pdf.ApplyStamp(imageStamper, 0); pdf.SaveAs("stampImage.pdf"); Imports IronPdf Imports IronPdf.Editing Imports System Private renderer As New ChromePdfRenderer() Private pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Example HTML Document!</h1>") ' Create image stamper Private imageStamper As New ImageStamper(New Uri("https://ironpdf.com/img/svgs/iron-pdf-logo.svg")) With {.VerticalAlignment = VerticalAlignment.Top} ' Stamp the image stamper pdf.ApplyStamp(imageStamper, 0) pdf.SaveAs("stampImage.pdf") $vbLabelText $csharpLabel 输出 PDF 文件 <hr 应用多个水印 使用 ApplyMultipleStamps 方法通过传递一组水印者将多个水印应用到文档上。 :path=/static-assets/pdf/content-code-examples/how-to/stamp-text-image-multiple-stamps.cs using IronPdf; using IronPdf.Editing; ChromePdfRenderer renderer = new ChromePdfRenderer(); PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Example HTML Document!</h1>"); // Create two text stampers TextStamper stamper1 = new TextStamper() { Text = "Text stamp 1", VerticalAlignment = VerticalAlignment.Top, HorizontalAlignment = HorizontalAlignment.Left, }; TextStamper stamper2 = new TextStamper() { Text = "Text stamp 2", VerticalAlignment = VerticalAlignment.Top, HorizontalAlignment = HorizontalAlignment.Right, }; Stamper[] stampersToApply = { stamper1, stamper2 }; // Apply multiple stamps pdf.ApplyMultipleStamps(stampersToApply); pdf.SaveAs("multipleStamps.pdf"); Imports IronPdf Imports IronPdf.Editing Private renderer As New ChromePdfRenderer() Private pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Example HTML Document!</h1>") ' Create two text stampers Private stamper1 As New TextStamper() With { .Text = "Text stamp 1", .VerticalAlignment = VerticalAlignment.Top, .HorizontalAlignment = HorizontalAlignment.Left } Private stamper2 As New TextStamper() With { .Text = "Text stamp 2", .VerticalAlignment = VerticalAlignment.Top, .HorizontalAlignment = HorizontalAlignment.Right } Private stampersToApply() As Stamper = { stamper1, stamper2 } ' Apply multiple stamps pdf.ApplyMultipleStamps(stampersToApply) pdf.SaveAs("multipleStamps.pdf") $vbLabelText $csharpLabel 输出 PDF 文件 <hr 水印位置 为了定义水印的位置,我们使用一个 3x3 网格,具有三个水平列和三个垂直行。 您可以选择水平对齐方式:左对齐、居中对齐和右对齐;以及垂直对齐方式:顶部对齐、中部对齐和底部对齐。 为了更加精确,您可以为每个位置调整水平和垂直偏移量。 请参阅下面的图像了解此概念的视觉表示。 class="content-img-align-center"> class="center-image-wrapper"> HorizontalAlignment:水印相对于页面的水平对齐。 默认设置是 HorizontalAlignment.Center。 VerticalAlignment:水印相对于页面的垂直对齐。 默认设置是 VerticalAlignment.Middle。 HorizontalOffset:水平偏移。 默认值为 0,默认单位为 IronPdf.Editing.MeasurementUnit.Percentage。 正值表示向右偏移,负值表示向左偏移。 VerticalOffset:垂直偏移。 默认值为 0,默认单位为 IronPdf.Editing.MeasurementUnit.Percentage。 正值表示向下偏移,负值表示向上偏移。 要指定 HorizontalOffset 和 VerticalOffset 属性,我们实例化 Length 类。 Length 的默认测量单位是百分比,但它也可以使用像英寸、毫米、厘米、像素和点数的测量单位。 代码 :path=/static-assets/pdf/content-code-examples/how-to/stamp-text-image-stamp-location.cs using IronPdf.Editing; using System; // Create text stamper ImageStamper imageStamper = new ImageStamper(new Uri("https://ironpdf.com/img/svgs/iron-pdf-logo.svg")) { HorizontalAlignment = HorizontalAlignment.Center, VerticalAlignment = VerticalAlignment.Top, // Specify offsets HorizontalOffset = new Length(10), VerticalOffset = new Length(10), }; Imports IronPdf.Editing Imports System ' Create text stamper Private imageStamper As New ImageStamper(New Uri("https://ironpdf.com/img/svgs/iron-pdf-logo.svg")) With { .HorizontalAlignment = HorizontalAlignment.Center, .VerticalAlignment = VerticalAlignment.Top, .HorizontalOffset = New Length(10), .VerticalOffset = New Length(10) } $vbLabelText $csharpLabel <hr HTML 水印示例 还有另一个水印类,我们可以用它来添加文本和图像水印。 HtmlStamper 类可用来渲染带有 CSS 样式的 HTML 设计,然后将其加盖在 PDF 文档上。 HtmlBaseUrl 属性用于指定 HTML 字符串资产(如 CSS 和图像文件)的基 URL。 代码 :path=/static-assets/pdf/content-code-examples/how-to/stamp-text-image-stamp-html.cs using IronPdf; using IronPdf.Editing; ChromePdfRenderer renderer = new ChromePdfRenderer(); PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Example HTML Document!</h1>"); // Create HTML stamper HtmlStamper htmlStamper = new HtmlStamper() { Html = @"<img src='https://ironpdf.com/img/svgs/iron-pdf-logo.svg'> <h1>Iron Software</h1>", VerticalAlignment = VerticalAlignment.Top, }; // Stamp the HTML stamper pdf.ApplyStamp(htmlStamper); pdf.SaveAs("stampHtml.pdf"); Imports IronPdf Imports IronPdf.Editing Private renderer As New ChromePdfRenderer() Private pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Example HTML Document!</h1>") ' Create HTML stamper Private htmlStamper As New HtmlStamper() With { .Html = "<img src='https://ironpdf.com/img/svgs/iron-pdf-logo.svg'> <h1>Iron Software</h1>", .VerticalAlignment = VerticalAlignment.Top } ' Stamp the HTML stamper pdf.ApplyStamp(htmlStamper) pdf.SaveAs("stampHtml.pdf") $vbLabelText $csharpLabel Html:要在 PDF 上加盖的 HTML 片段。 所有对 JavaScript、CSS 和图像文件的外部引用将相对于 Stamper 类的 HtmlBaseUrl 属性。 HtmlBaseUrl:对于外部 CSS、JavaScript 和图像文件的引用的 HTML 基 URL 将是相对的。 CssMediaType:启用 Media="screen" CSS 样式和样式表。 通过设置 AllowScreenCss=false,IronPdf 从 HTML 渲染水印使用 CSS for media="print",就像在浏览器打印对话框中打印网页一样。 默认值是 PdfCssMediaType.Screen。 <hr 条形码水印示例 BarcodeStamper 类可以用来直接在现有 PDF 文档上加盖条形码。 水印支持包括 QRCode、Code128 和 Code39 在内的条形码类型。 代码 :path=/static-assets/pdf/content-code-examples/how-to/stamp-text-image-stamp-barcode.cs using IronPdf; using IronPdf.Editing; ChromePdfRenderer renderer = new ChromePdfRenderer(); PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Example HTML Document!</h1>"); // Create barcode stamper BarcodeStamper barcodeStamper = new BarcodeStamper("IronPdf!!", BarcodeEncoding.Code39) { VerticalAlignment = VerticalAlignment.Top, }; // Stamp the barcode stamper pdf.ApplyStamp(barcodeStamper); pdf.SaveAs("stampBarcode.pdf"); Imports IronPdf Imports IronPdf.Editing Private renderer As New ChromePdfRenderer() Private pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Example HTML Document!</h1>") ' Create barcode stamper Private barcodeStamper As New BarcodeStamper("IronPdf!!", BarcodeEncoding.Code39) With {.VerticalAlignment = VerticalAlignment.Top} ' Stamp the barcode stamper pdf.ApplyStamp(barcodeStamper) pdf.SaveAs("stampBarcode.pdf") $vbLabelText $csharpLabel Value:条形码的字符串值。 BarcodeType:条形码的编码类型,支持的类型包括 QRCode、Code128 和 Code39。默认是 QRCode。 Width:渲染的条形码的宽度(以像素为单位)。 默认是 250px。 Height:渲染的条形码的高度(以像素为单位)。 默认是 250px。 <hr 探索水印选项 除了上面提到和解释的选项外,以下是水印类可用的更多选项。 Opacity:允许水印变为透明。 0 是完全不可见,100 是完全不透明。 Rotation:将水印顺时针旋转指定的角度,从 0 到 360 度。 MaxWidth:输出水印的最大宽度。 MaxHeight:输出水印的最大高度。 MinWidth:输出水印的最小宽度。 MinHeight:输出水印的最小高度。 Hyperlink:使此 Stamper 的加盖元素具有点击超链接。 注意:通过 link(a) 标签创建的 HTML 链接不由水印保留。 Scale:对水印应用百分比缩放,以使其变大或缩小。 默认是 100(百分比),没有效果。 IsStampBehindContent:设置为 true 以在内容后加盖水印。 如果内容是不透明的,水印可能是不可见的。 WaitFor:一个方便的包装器,用于等待各种事件或仅等待一定时间。 Timeout:渲染超时时间(以秒为单位)。 默认值是 60。 常见问题解答 在PDF上印戳文本和图像的目的是什么? 在PDF上印戳文本和图像可让您在现有PDF文档上叠加额外内容,如标签、水印或注释。 这通过IronPDF的各种印戳类实现,如`TextStamper`和`ImageStamper`。 如何使用C#开始在PDF上印戳文本和图像? 要开始使用C#在PDF上印戳文本和图像,请通过NuGet安装IronPDF库,配置合适的印戳类,并使用ApplyStamp方法将印戳应用到PDF。 我可以在IronPDF中使用哪些类型的印戳用于PDF印戳? IronPDF提供多种印戳类型:用于文本的`TextStamper`,用于图像的`ImageStamper`,用于带CSS的HTML内容的`HTMLStamper`,以及用于QRCode和其他条码类型的`BarcodeStamper`。 如何使用C#在PDF的特定页面上应用文本印戳? 在IronPDF中,您可以通过创建一个`TextStamper`对象,配置其属性,并使用带页面索引参数的ApplyStamp方法来目标特定页面。 是否可以在PDF上同时应用多个印戳? 是的,IronPDF允许您使用ApplyMultipleStamps方法一次应用多个印戳,您可以传递配置好的印戳对象数组。 对于PDF中的印戳定位,哪些定制选项可用? IronPDF允许使用3x3网格定制印戳定位,包括左右对齐、中间对齐等水平位置选项,以及顶部、中部、底部等垂直位置选项,还有额外的偏移设置。 可以使用HTML内容在PDF上印戳吗? 可以,IronPDF的`HTMLStamper`类允许带CSS样式的HTML内容被印戳到PDF上,为复杂设计提供了灵活的解决方案。 IronPDF支持哪些条码类型用于PDF印戳? IronPDF的`BarcodeStamper`支持多种条码类型,包括QRCode、Code128和Code39,允许您将条码信息加入PDF文档。 IronPDF提供哪些高级选项用于定制PDF印戳? IronPDF提供了用于PDF印戳的高级定制选项,包括不透明度、旋转、最大宽度、最大高度、超链接、比例、内容印戳背景、等待时间和超时时间等属性。 针对使用IronPDF的PDF印戳有哪些常见的故障排除提示? 确保您已安装正确版本的IronPDF,验证您印戳对象的配置,并检查您的代码是否正确指定了印戳应用的页面索引或区域。 IronPDF 是否完全兼容 .NET 10,以便在 PDF 上添加文本和图像? 是的——IronPDF 完全兼容 .NET 10。诸如 `TextStamper`、`ImageStamper`、`ApplyStamp`、`ApplyMultipleStamps` 等图章功能以及对齐/自定义选项,无需额外配置即可在 .NET 10 项目中直接使用。这些功能在 .NET 10 下的所有平台和项目类型中均受支持。 Chaknith Bin 立即与工程团队聊天 软件工程师 Chaknith 在 IronXL 和 IronBarcode 工作。他在 C# 和 .NET 方面有着深厚的专业知识,帮助改进软件并支持客户。他从用户互动中获得的见解有助于更好的产品、文档和整体体验。 准备开始了吗? Nuget 下载 16,154,058 | 版本: 2025.11 刚刚发布 免费 NuGet 下载 总下载量:16,154,058 查看许可证