在Spire.Pdf命名空间下有一个PdfPageTemplateElement类,用于创建页眉\页脚,水印和印章模板。在该模板上创建好页眉页脚等信息后,即可应用到PDF文档,使现有的页面出现相应信息。
C#
static void Main(string[] args)
{
    //创建PDF文档
    PdfDocument doc = new PdfDocument();
    //指定页面大小
    doc.PageSettings.Size = PdfPageSize.A4;
    //将页边距设置为0 
    doc.PageSettings.Margins = new PdfMargins(0);
    //创建PdfMargins对象,指定期望设置的页边距 
    PdfMargins margins = new PdfMargins(40, 60, 40, 60);
    //在文档模板的顶部和底部应用页眉页脚模板 
    doc.Template.Top = CreateHeaderTemplate(doc, margins);
    doc.Template.Bottom = CreateFooterTemplate(doc, margins);
    //在文档模板的左右部分应用空白模板 
    doc.Template.Left = new PdfPageTemplateElement(margins.Left, doc.PageSettings.Size.Height);
    doc.Template.Right = new PdfPageTemplateElement(margins.Right, doc.PageSettings.Size.Height);
    //在文档中添加两页并写入文字
    PdfPageBase page1 = doc.Pages.Add();
    PdfPageBase page2 = doc.Pages.Add();
    PdfTrueTypeFont font = new PdfTrueTypeFont(new Font("华文楷体", 15f, FontStyle.Bold), true);
    page1.Canvas.DrawString("正文开始的地方...", font, PdfBrushes.Black, 0, 0);
    page2.Canvas.DrawString("正文开始的地方...", font, PdfBrushes.Black, 0, 0);
    //保存文档
    doc.SaveToFile("HeaderAndFooter.pdf");
}
//创建页眉模板
static PdfPageTemplateElement CreateHeaderTemplate(PdfDocument doc, PdfMargins margins)
{
    //获取页面大小
    SizeF pageSize = doc.PageSettings.Size;
    //创建PdfPageTemplateElement对象headerSpace,即作页眉模板
    PdfPageTemplateElement headerSpace = new PdfPageTemplateElement(pageSize.Width, margins.Top);
    headerSpace.Foreground = false;
    //声明x,y两个float型变量
    float x = margins.Left;
    float y = 0;
    //在headerSpace中绘制图片
    PdfImage headerImage = PdfImage.FromFile(@"C:\logo.png");
    float width = headerImage.Width / 3;
    float height = headerImage.Height / 3;
    headerSpace.Graphics.DrawImage(headerImage, x, margins.Top - height - 2, width, height);
    //在headerSpace中绘制线段
    PdfPen pen = new PdfPen(PdfBrushes.Gray, 0.5f);
    headerSpace.Graphics.DrawLine(pen, x, y + margins.Top - 2, pageSize.Width - x, y + margins.Top - 2);
    //返回headerSpace
    return headerSpace;
}
// 创建页脚模板
static PdfPageTemplateElement CreateFooterTemplate(PdfDocument doc, PdfMargins margins)
{
    //获取页面大小
    SizeF pageSize = doc.PageSettings.Size;
    //创建PdfPageTemplateElement对象footerSpace,即页脚模板
    PdfPageTemplateElement footerSpace = new PdfPageTemplateElement(pageSize.Width, margins.Bottom);
    footerSpace.Foreground = false;
    //声明x,y两个float型变量
    float x = margins.Left;
    float y = 0;
    //在footerSpace中绘制线段
    PdfPen pen = new PdfPen(PdfBrushes.Gray, 0.5f);
    footerSpace.Graphics.DrawLine(pen, x, y, pageSize.Width - x, y);
    //在footerSpace中绘制文字
    y = y + 5;
    PdfTrueTypeFont font = new PdfTrueTypeFont(new Font("黑体", 10f, FontStyle.Bold), true);
    PdfStringFormat format = new PdfStringFormat(PdfTextAlignment.Left);
    String footerText = "成都冰蓝科技有限公司\n电话:028-81705109\n网址:http://www.e-iceblue.cn";
    footerSpace.Graphics.DrawString(footerText, font, PdfBrushes.Black, x, y, format);
    //在footerSpace中绘制当前页码和总页码
    PdfPageNumberField number = new PdfPageNumberField();
    PdfPageCountField count = new PdfPageCountField();
    PdfCompositeField compositeField = new PdfCompositeField(font, PdfBrushes.Black, "第{0}页/共{1}页", number, count);  
    compositeField.StringFormat = new PdfStringFormat(PdfTextAlignment.Right, PdfVerticalAlignment.Top);
    SizeF size = font.MeasureString(compositeField.Text);
    compositeField.Bounds = new RectangleF(pageSize.Width - x - size.Width, y, size.Width, size.Height);
    compositeField.Draw(footerSpace.Graphics);
    //返回footerSpace
    return footerSpace;
}
VB.NET
Private Shared Sub Main(args As String())
	'创建PDF文档 Dim doc As New PdfDocument() '指定页面大小
	doc.PageSettings.Size = PdfPageSize.A4
	'将页边距设置为0 doc.PageSettings.Margins = New PdfMargins(0) '创建PdfMargins对象,指定期望设置的页边距 
	Dim margins As New PdfMargins(40, 60, 40, 60)
	'在文档模板的顶部和底部应用页眉页脚模板 doc.Template.Top = CreateHeaderTemplate(doc,margins) doc.Template.Bottom = CreateFooterTemplate(doc,margins) '在文档模板的左右部分应用空白模板 
	doc.Template.Left = New PdfPageTemplateElement(margins.Left, doc.PageSettings.Size.Height)
	doc.Template.Right = New PdfPageTemplateElement(margins.Right, doc.PageSettings.Size.Height)
	'在文档中添加两页并写入文字 Dim page1 As PdfPageBase = doc.Pages.Add() Dim page2 As PdfPageBase = doc.Pages.Add() Dim font As New PdfTrueTypeFont(New Font("华文楷体",15F,FontStyle.Bold),True) page1.Canvas.DrawString("正文开始的地方...",font,PdfBrushes.Black,0,0) page2.Canvas.DrawString("正文开始的地方...",font,PdfBrushes.Black,0,0) '保存文档
	doc.SaveToFile("HeaderAndFooter.pdf")
End Sub
'创建页眉模板 Private Shared Function CreateHeaderTemplate(doc As PdfDocument,margins As PdfMargins) As PdfPageTemplateElement '获取页面大小
	Dim pageSize As SizeF = doc.PageSettings.Size
	'创建PdfPageTemplateElement对象headerSpace,即作页眉模板 Dim headerSpace As New PdfPageTemplateElement(pageSize.Width,margins.Top) headerSpace.Foreground = False '声明x,y两个float型变量
	Dim x As Single = margins.Left
	Dim y As Single = 0
	'在headerSpace中绘制图片 Dim headerImage As PdfImage = PdfImage.FromFile("C:\logo.png") Dim width As Single = headerImage.Width / 3 Dim height As Single = headerImage.Height / 3 headerSpace.Graphics.DrawImage(headerImage,x,margins.Top - height - 2,width,height) '在headerSpace中绘制线段
	Dim pen As New PdfPen(PdfBrushes.Gray, 0.5F)
	headerSpace.Graphics.DrawLine(pen, x, y + margins.Top - 2, pageSize.Width - x, y + margins.Top - 2)
	'返回headerSpace Return headerSpace End Function ' 创建页脚模板
Private Shared Function CreateFooterTemplate(doc As PdfDocument, margins As PdfMargins) As PdfPageTemplateElement
	'获取页面大小 Dim pageSize As SizeF = doc.PageSettings.Size '创建PdfPageTemplateElement对象footerSpace,即页脚模板
	Dim footerSpace As New PdfPageTemplateElement(pageSize.Width, margins.Bottom)
	footerSpace.Foreground = False
	'声明x,y两个float型变量 Dim x As Single = margins.Left Dim y As Single = 0 '在footerSpace中绘制线段
	Dim pen As New PdfPen(PdfBrushes.Gray, 0.5F)
	footerSpace.Graphics.DrawLine(pen, x, y, pageSize.Width - x, y)
	'在footerSpace中绘制文字 y = y + 5 Dim font As New PdfTrueTypeFont(New Font("黑体",10F,FontStyle.Bold),True) Dim format As New PdfStringFormat(PdfTextAlignment.Left) Dim footerText As [String] = "成都冰蓝科技有限公司" & vbLf & "电话:028-81705109" & vbLf & "网址:http://www.e-iceblue.cn" footerSpace.Graphics.DrawString(footerText,font,PdfBrushes.Black,x,y,format) '在footerSpace中绘制当前页码和总页码
	Dim number As New PdfPageNumberField()
	Dim count As New PdfPageCountField()
	Dim compositeField As New PdfCompositeField(font, PdfBrushes.Black, "第{0}页/共{1}页", number, count)
	compositeField.StringFormat = New PdfStringFormat(PdfTextAlignment.Right, PdfVerticalAlignment.Top)
	Dim size As SizeF = font.MeasureString(compositeField.Text)
	compositeField.Bounds = New RectangleF(pageSize.Width - x - size.Width, y, size.Width, size.Height)
	compositeField.Draw(footerSpace.Graphics)
	'返回footerSpace Return footerSpace End Function
 



 
					



