IronPDF 操作指南 添加文字和图像 使用 C# 和 IronPDF 在 PDF 上标注文本和图像。 Chaknith Bin 已更新:七月 22, 2025 下载 IronPDF NuGet 下载 DLL 下载 Windows 安装程序 免费试用 法学硕士副本 法学硕士副本 将页面复制为 Markdown 格式,用于 LLMs 在 ChatGPT 中打开 向 ChatGPT 咨询此页面 在双子座打开 向 Gemini 询问此页面 在双子座打开 向 Gemini 询问此页面 打开困惑 向 Perplexity 询问有关此页面的信息 分享 在 Facebook 上分享 分享到 X(Twitter) 在 LinkedIn 上分享 复制链接 电子邮件文章 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 上添加文本水印的简单实现,确保快速高效的水印过程。 立即开始使用 NuGet 创建 PDF 文件: 使用 NuGet 包管理器安装 IronPDF PM > Install-Package IronPdf 复制并运行这段代码。 var pdf = new IronPdf.PdfDocument("input.pdf"); var stamper = new IronPdf.TextStamper("Confidential", 50, 50); pdf.ApplyStamp(stamper); pdf.SaveAs("stamped.pdf"); 部署到您的生产环境中进行测试 立即开始在您的项目中使用 IronPDF,免费试用! 免费试用30天 最小工作流程(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"。 图像水印示例 类似于文本水印,我们首先从 ImageStamper 类创建一个对象,然后使用 ApplyStamp 方法将图像应用到文档中。 此方法的第二个参数还接受一个页面索引,可以用来将水印应用到一个或多个页面。 在下面的示例中,我们指定图像应在 PDF 的第 1 页上加盖。 提示所有页面索引均采用零基索引。 :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 应用多个戳记 使用 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 水印位置 为了定义水印的位置,我们使用一个 3x3 网格,具有三个水平列和三个垂直行。 您可以选择水平对齐方式:左对齐、居中对齐和右对齐;以及垂直对齐方式:顶部对齐、中部对齐和底部对齐。 为了更加精确,您可以为每个位置调整水平和垂直偏移量。 请参阅下面的图像了解此概念的视觉表示。 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 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。 条形码水印示例 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。 探索水印选项 除了上面提到和解释的选项外,以下是水印类可用的更多选项。 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,493,056 | Version: 2025.11 刚刚发布 免费 NuGet 下载 总下载量:16,493,056 查看许可证