利用C#如何给PDF文档添加文本与图片页眉
发布时间 - 2026-01-10 22:20:04 点击率:次前言

下面这篇文章向大家分享如何使用了免费组件Free Spire.PDF给PDF文档添加文本和图片页眉。这个组件提供了一些方法,可以帮助我们快速方便地实现此目的。
添加页眉步骤:
首先,创建一个Visual C#控制台项目,添加组件引用并使用以下命名空间。
using System; using System.Drawing; using Spire.Pdf; using Spire.Pdf.Graphics;
在下列代码中,我们先定义一个SetDocumentTemplate()方法来创建一个PDF文档模板,这个模板只包含文本和图片页眉。然后,调用DrawString(string s, PdfFontBase font, PdfBrush brush, float x, float y, PdfStringFormat format)方法和DrawImage(PdfImage image, float x, float y, float width, float height)方法,插入自定义的文本和图片页眉。
static void SetDocumentTemplate(PdfDocument doc, SizeF pageSize, PdfMargins margin)
{
//创建PDF模板
PdfPageTemplateElement topSpace = new PdfPageTemplateElement(pageSize.Width, margin.Top);
topSpace.Foreground = true;
doc.Template.Top = topSpace;
//添加文本页眉
PdfTrueTypeFont font1 = new PdfTrueTypeFont(new Font("宋体", 15f), true);
PdfStringFormat format = new PdfStringFormat(PdfTextAlignment.Right);
String Text = "PDF文本页眉";
float y = 0;
float x = PdfPageSize.A4.Width;
topSpace.Graphics.DrawString(Text, font1, PdfBrushes.PaleVioletRed, x, y, format);
//添加图片页眉
PdfImage headerImage = PdfImage.FromFile(@"logo.png");
float width = headerImage.Width;
float height = headerImage.Height;
PointF pageLeftTop = new PointF(0 , 0);
topSpace.Graphics.DrawImage(headerImage,0,0,width/2,height/2);
}
接下来再创建一个PDF文档,主函数内调用SetDocumentTemplate()方法将带有文本和图片页眉的模板应用到新建的PDF文档中。
具体步骤:
第一步:创建一个PDF文档对象。
PdfDocument doc = new PdfDocument();
第二步:设置页边距。
PdfUnitConvertor unitCvtr = new PdfUnitConvertor(); PdfMargins margin = new PdfMargins(); margin.Top = unitCvtr.ConvertUnits(2.54f, PdfGraphicsUnit.Centimeter, PdfGraphicsUnit.Point); margin.Bottom = margin.Top; margin.Left = unitCvtr.ConvertUnits(4.17f, PdfGraphicsUnit.Centimeter, PdfGraphicsUnit.Point); margin.Right = margin.Left;
第三步:PDF文档中应用模板。
SetDocumentTemplate(doc, PdfPageSize.A4, margin);
第四步:PDF文档添加页面。
PdfPageBase page = doc.Pages.Add(); doc.Pages.Add();
第五步:保存并打开文档。
doc.SaveToFile("页眉.pdf");
System.Diagnostics.Process.Start("页眉.pdf");
添加页眉后的效果图:
全部代码:
using System;
using Spire.Pdf;
using System.Drawing;
using Spire.Pdf.Graphics;
namespace PDF添加页眉
{
class Program
{
static void Main(string[] args)
{
PdfDocument doc = new PdfDocument();
PdfUnitConvertor unitCvtr = new PdfUnitConvertor();
PdfMargins margin = new PdfMargins();
margin.Top = unitCvtr.ConvertUnits(2.54f, PdfGraphicsUnit.Centimeter, PdfGraphicsUnit.Point);
margin.Bottom = margin.Top;
margin.Left = unitCvtr.ConvertUnits(4.17f, PdfGraphicsUnit.Centimeter, PdfGraphicsUnit.Point);
margin.Right = margin.Left;
SetDocumentTemplate(doc, PdfPageSize.A4, margin);
PdfPageBase page = doc.Pages.Add();
doc.Pages.Add();
doc.SaveToFile("页眉.pdf");
System.Diagnostics.Process.Start("页眉.pdf");
}
static void SetDocumentTemplate(PdfDocument doc, SizeF pageSize, PdfMargins margin)
{
PdfPageTemplateElement topSpace = new PdfPageTemplateElement(pageSize.Width, margin.Top);
topSpace.Foreground = true;
doc.Template.Top = topSpace;
PdfTrueTypeFont font1 = new PdfTrueTypeFont(new Font("宋体", 15f), true);
PdfStringFormat format = new PdfStringFormat(PdfTextAlignment.Right);
String Text = "PDF文本页眉";
float y = 0;
float x = PdfPageSize.A4.Width;
topSpace.Graphics.DrawString(Text, font1, PdfBrushes.PaleVioletRed, x, y, format);
PdfImage headerImage = PdfImage.FromFile(@"C:\Users\Administrator\Pictures\under_construction.jpg");
float width = headerImage.Width;
float height = headerImage.Height;
PointF pageLeftTop = new PointF(0, 0);
topSpace.Graphics.DrawImage(headerImage, 0, 0, width / 2, height / 2);
}
}
}
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家学习或者使用C#能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对的支持。
# pdf页眉加图片
# c
# pdf添加图片
# 读取pdf的文本内容
# C#利用iTextSharp组件给PDF文档添加图片/文字水印
# c#添加图片、文本水印到PDF文件
# C#实现的pdf生成图片文字水印类实例
# 如何使用C#在PDF文件添加图片印章
# C#中创建PDF网格并插入图片的方法
# C#实现PDF文件添加图片背景
# C#怎么给PDF添加背景图片
# C# PDF转图片(JPG
# Png)的项目实践
# 文档
# 创建一个
# 这篇文章
# 宋体
# 自定义
# 谢谢大家
# 大家分享
# 可以帮助
# 方法来
# 第二步
# 第三步
# 第四步
# 第五步
# 使用了
# 有疑问
# PdfImage
# width
# image
# format
# float
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
php做exe能调用系统命令吗_执行cmd指令实现方式【详解】
HTML5空格和nbsp有啥关系_nbsp的作用及使用场景【说明】
如何在服务器上配置二级域名建站?
中国移动官方网站首页入口 中国移动官网网页登录
bootstrap日历插件datetimepicker使用方法
如何在万网利用已有域名快速建站?
html5怎么画眼睛_HT5用Canvas或SVG画眼球瞳孔加JS控制动态【绘制】
济南网站建设制作公司,室内设计网站一般都有哪些功能?
laravel怎么在请求结束后执行任务(Terminable Middleware)_laravel Terminable Middleware请求结束任务执行方法
1688铺货到淘宝怎么操作 1688一键铺货到自己店铺详细步骤
如何挑选高效建站主机与优质域名?
如何为不同团队 ID 动态生成多个“认领值班”按钮
Laravel如何正确地在控制器和模型之间分配逻辑_Laravel代码职责分离与架构建议
Android okhttputils现在进度显示实例代码
Laravel如何实现事件和监听器?(Event & Listener实战)
Laravel怎么实现搜索高亮功能_Laravel结合Scout与Algolia全文检索【实战】
PHP 500报错的快速解决方法
简单实现Android验证码
购物网站制作费用多少,开办网上购物网站,需要办理哪些手续?
如何在景安服务器上快速搭建个人网站?
如何在七牛云存储上搭建网站并设置自定义域名?
IOS倒计时设置UIButton标题title的抖动问题
如何用手机制作网站和网页,手机移动端的网站能制作成中英双语的吗?
如何打造高效商业网站?建站目的决定转化率
如何将凡科建站内容保存为本地文件?
html5audio标签播放结束怎么触发事件_onended回调方法【教程】
Python并发异常传播_错误处理解析【教程】
如何在万网开始建站?分步指南解析
最好的网站制作公司,网购哪个网站口碑最好,推荐几个?谢谢?
Laravel如何使用Facades(门面)及其工作原理_Laravel门面模式与底层机制
如何快速搭建虚拟主机网站?新手必看指南
常州企业网站制作公司,全国继续教育网怎么登录?
矢量图网站制作软件,用千图网的一张矢量图做公司app首页,该网站并未说明版权等问题,这样做算不算侵权?应该如何解决?
高端云建站费用究竟需要多少预算?
如何自定义safari浏览器工具栏?个性化设置safari浏览器界面教程【技巧】
Laravel如何使用Socialite实现第三方登录?(微信/GitHub示例)
Laravel如何处理表单验证?(Requests代码示例)
Win11怎么修改DNS服务器 Win11设置DNS加速网络【指南】
浅谈redis在项目中的应用
HTML5打空格有哪些误区_新手常犯的空格使用错误【技巧】
北京网站制作公司哪家好一点,北京租房网站有哪些?
怎么用AI帮你设计一套个性化的手机App图标?
Laravel如何使用Eloquent进行子查询
EditPlus中的正则表达式 实战(2)
详解一款开源免费的.NET文档操作组件DocX(.NET组件介绍之一)
Java解压缩zip - 解压缩多个文件或文件夹实例
教学论文网站制作软件有哪些,写论文用什么软件
?
Laravel如何为API生成Swagger或OpenAPI文档
详解Nginx + Tomcat 反向代理 如何在高效的在一台服务器部署多个站点
如何快速生成高效建站系统源代码?

