IRONSOFTWAREHOME

如何使用 C# 在 PDF 上绘制文本和位图

Curtis Chau
Curtis Chau
Updated: 2026年4月22日

IronPDF使您可以使用DrawBitmap方法在现有PDF上绘制文本和图像,允许通过水印、徽标和注释进行自定义,并在不更改原始内容的情况下改善视觉外观。

在 PDF 上绘制文本和图像涉及在现有文档中添加内容。 IronPDF无缝启用此功能。 通过加入文本和图像,您可以通过水印、徽标和注释自定义PDF,提升文档的视觉外观和品牌形象。 此外,文本和图像还有助于信息展示、数据可视化和交互式表单创建。

快速入门:使用IronPDF向 PDF 添加文本和图像

开始用文本和图像快速高效地增强您的 PDF 文档。 使用DrawBitmap方法,您可以轻松定制PDF,通过添加水印、徽标或注释。 本示例演示了如何在特定坐标处绘制文本并将图像无缝插入 PDF。

  1. 1Install IronPDF with NuGet Package Manager

    PM > Install-Package IronPdf

  2. 2Copy and run this code snippet.

    new ChromePdfRenderer()
        .RenderHtmlAsPdf("<h1>Doc</h1>")
        .DrawText("Hello World", FontTypes.TimesNewRoman.Name, 12, 0, 100, 100, Color.Black, 0)
        .DrawBitmap(AnyBitmap.FromFile("logo.png"), 0, 50, 250, 500, 300)
        .SaveAs("annotated.pdf");
    C#
  3. 3Deploy to test on your live environment

    Start using IronPDF in your project today with a free trial
    arrow pointer

如何在 PDF 上绘制文本?

可在DrawText方法允许您在不更改其原始内容的情况下向现有PDF加入文本。 这种方法尤其适用于向 PDF 添加动态内容,类似于 stamp text and image 功能,可用于更复杂的叠加。

了解坐标系

在绘制文本之前,请先了解 PDF 坐标系。 原点(0,0)位于页面左下角,X 值向右递增,Y 值向上递增。 这与许多图形系统不同,后者的原点位于左上方。

using IronPdf;
using IronSoftware.Drawing;

ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>testing</h1>");

// Draw text on PDF
pdf.DrawText("Some text", FontTypes.TimesNewRoman.Name, FontSize: 12, PageIndex: 0, X: 100, Y: 100, Color.Black, Rotation: 0);

pdf.SaveAs("drawText.pdf");

我可以使用哪些字体?

DrawText方法目前支持IronPDF中的所有标准字体,包括ZapfDingbats。 访问管理字体文章中的'IronPDF中的标准字体'部分,获取这些字体类型的斜体、粗体和倾斜体变体。

ZapfDingbats 字体可以显示 ▲ 等符号。 有关受支持符号的完整列表,请访问 Wikipedia on Zapf Dingbats

PDF上的输出字体样本

字体样本显示 Arial、Courier、Helvetica 和 Times New Roman 系列字体的粗体、斜体和斜体变化

如何添加带换行符的文本?

绘制文本操作支持换行符,允许您使用内置换行符来呈现文本,以实现更好的格式和视觉清晰度。 这在添加多行注释或创建结构化文本布局时非常有用。

要实现这一点,请将newline characters (\n)加到文本字符串中。 以上面的例子为例:

// Multi-line text example with proper spacing
string textWithNewlines = "Some text\nSecond line\nThird line with more content";
pdfDoc.DrawText(textWithNewlines, font, position);

// You can also use Environment.NewLine for platform-specific line breaks
string platformText = $"Line 1{Environment.NewLine}Line 2{Environment.NewLine}Line 3";
pdfDoc.DrawText(platformText, font, position);

如何使用自定义字体?

自定义字体由DrawText方法支持,将您的字体选项扩展到标准字体之外。 在保持品牌一致性或使用专用字体时,这一特点至关重要。 有关高级字体管理,请参阅我们的管理 PDF 中的字体指南。

下面是一个示例,文本中添加了 Pixelify Sans 字体

using IronPdf;
using IronSoftware.Drawing;
using System.IO;

ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>testing</h1>");

// Add custom font to the PDF
byte[] fontByte = File.ReadAllBytes(@".\PixelifySans-VariableFont_wght.ttf");
var addedFont = pdf.Fonts.Add(fontByte);

// Draw text on PDF
pdf.DrawText("Iron Software", addedFont.Name, FontSize: 12, PageIndex: 0, X: 100, Y: 600, Color.Black, Rotation: 0);

pdf.SaveAs("drawCustomFont.pdf");

高级文本定位

在精确定位文本时,请考虑以下提示:

  • 页面尺寸:使用pdf.Pages[pageIndex].Height获取页面尺寸
  • 旋转:旋转参数可接受角度(0-360),以显示有角度的文本。
  • 颜色选项:超越基本颜色,使用RGB值:Color.FromArgb(255, 100, 100)

我最喜欢的这种库是 IronPDF。它允许快速高效地操作 PDF 文件。它还具有许多有价值的功能,比如导出为 PDF/A 格式和数字签名 PDF 文档。

Milan Jovanovic

微软MVP

查看案例研究

IronOCR 意味着我们每年可以节省 $40,000 的人工处理成本,同时提高生产力,并释放资源用于高影响任务。我强烈推荐它。

Brent Matzelle

首席技术官,OPYN

查看案例研究

Iron Suite 在我们的运营中起着至关重要的作用。这些工具提高了业务各方面的效率,包括创建平面图和改善库存管理。

David Jones

首席软件工程师,Agorus Build

查看案例研究

如何在 PDF 上绘制图像?

DrawBitmap方法使您可以将位图添加到现有PDF文档中。 此方法的功能与图像印记功能类似,允许您将图像印记到现有的 PDF 文件上。 对于复杂的图像处理需求,请参阅我们的向 PDF 添加图像指南。

Please note: DrawBitmap方法对大图像效果最好。 使用较小分辨率图像时,可能会遇到以下异常: **IronPDF:'绘制图像时出错:数据长度 (567000) 小于预期 (756000)'。**要解决此问题,请使用图像标记器,它可以处理所有尺寸的图像。

样本图像

Iron Software 徽标,品牌背景上有彩色 3D 互锁几何设计

实施是什么样的?

using IronPdf;
using IronSoftware.Drawing;

ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>testing</h1>");

// Open the image from file
AnyBitmap bitmap = AnyBitmap.FromFile("ironSoftware.png");

// Draw the bitmp on PDF
pdf.DrawBitmap(bitmap, 0, 50, 250, 500, 300);

pdf.SaveAs("drawImage.pdf");

输出PDF

还有哪些其他参数可用?

  • 像素格式PixelFormat属性指定位图的颜色数据格式,主要控制透明度支持。 默认值是Format32bppArgb。 通过将参数作为一个选项传递,在像素枚举格式Format32bppArgb之间选择。 这在处理 PDF 中的 背景和前景元素时非常有用。

  • 忽略页面旋转:此bool属性确定在绘制位图时该方法是否忽略页面旋转。默认情况下,该值为false。 在对所有页面(无论旋转与否)一致地应用水印时尤其有用。

常见用例和最佳实践

在 PDF 上绘制文本和图像时,请考虑这些实际应用:

1.动态水印:为敏感文档添加公司徽标或 "机密 "标记 2.页码:在所有页面的一致位置绘制页码 3.签名位置:在表单指定位置添加签名图像 4.页眉/页脚增强:用动态内容补充现有页眉

为调试和监控 PDF 操作,请执行 自定义日志 以跟踪绘图操作并确保正确执行。

性能考虑

在处理多页或大文档时:

  • 尽可能进行批量操作,以尽量减少内存使用量
  • 使用后处置位图对象以释放资源
  • 考虑预加载常用图片以提高性能

准备好看看您还能做些什么吗? 请查看我们的教程页面:编辑 PDF

Frequently Asked Questions

我可以使用哪些方法在现有 PDF 文件中添加文本和图像?

IronPDF 提供了两种向现有 PDF 添加内容的主要方法:用于添加文本的 DrawText 方法和用于添加图像的 DrawBitmap 方法。通过这些方法,您可以为 PDF 定制水印、徽标和注释,而无需更改原始文档内容。

在绘制文本时,PDF 坐标系是如何工作的?

在 IronPDF 中,PDF 坐标系的原点(0,0)位于页面的左下角。X 值向右增加,Y 值向上增加。这与原点位于左上角的许多图形系统不同。

在 PDF 上绘制文本时支持哪些字体?

IronPDF 的 DrawText 方法支持所有标准字体,包括 Courier、Arial (Helvetica)、Times New Roman、Symbol 和 ZapfDingbats。这些字体还提供斜体、粗体和斜体变体。ZapfDingbats 字体可用于显示特殊符号。

能否在一次操作中将文本和图像同时添加到 PDF 中?

是的,IronPDF 允许您将各种方法串联起来。您可以使用 ChromePdfRenderer 创建 PDF,然后在一行代码中依次应用 DrawText 和 DrawBitmap 方法,从而高效地为 PDF 文档添加多个元素。

在 PDF 上绘制文本和图像的常见用例有哪些?

IronPDF 的绘图功能通常用于添加水印以保护文档、插入公司徽标以树立品牌形象、创建注释以供文档审阅、改善视觉外观、促进数据可视化以及创建交互式表单。

Curtis Chau
Technical Writer

Curtis Chau holds a Bachelor’s degree in Computer Science (Carleton University) and specializes in front-end development with expertise in Node.js, TypeScript, JavaScript, and React. Passionate about crafting intuitive and aesthetically pleasing user interfaces, Curtis enjoys working with modern frameworks and creating well-structured, visually appealing manuals.

...
Read More

准备开始了吗?

Nuget Downloads 20,389,208版本:2026.7刚刚发布

免费获取

30天试用密钥 即刻获取。

bullet_checked无需信用卡或创建账户
bullet_test在生产环境中测试
且无水印
bullet_calendar30天完全
功能性产品
bullet_support试用期间提供
24/5技术支持
立即获取您的免费30 天试用密钥
无需信用卡或创建账户

免费试用 IronPDF

5 分钟内设置完成

C# PDF DLL

下载 DLL

立即下载

或在此处下载 Windows 安装程序。

  1. 下载并解压 IronPDF 到您的解决方案目录中的 ~/Libs 之类的位置
  2. 在 Visual Studio 解决方案资源管理器中,右键点击引用。选择浏览,“IronPDF.dll”
C# 用于 PDF 的 NuGet 库

通过 NuGet 安装

                  Install-Package IronPdf
                
nuget.org/packages/IronPdf/
  1. 在解决方案资源管理器中,右键点击引用,管理 NuGet 包
  2. 选择浏览并搜索 “IronPDF”
  3. 选择包并安装
Key in blue circle

立即获取免费的 30 天试用版密钥

bullet_checked无需信用卡或创建账户
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
预约您的免费现场演示
Booking Badge related to IronPDF Product Demo

深受全球数百万工程师信赖

Iron Software 的客户徽标
获取您的无义务咨询
填写下面的表格或通过sales@ironsoftware.com
您的资料将始终保密。
深受全球数百万工程师信赖
Iron Software 的客户徽标
立即获取您的免费30 天试用密钥
无需信用卡或创建账户