微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

C#添加PDF页眉——添加文本、图片到页眉

页眉常用于显示文档的附加信息,我们可以在页眉中插入文本或者图形,例如,页码、日期、公司徽标、文档标题文件名或作者名等等。那么我们如何以编程的方式添加页眉呢?今天,这篇文章向大家分享如何使用了免费组件Free Spire.PDF给PDF文档添加文本和图片页眉。这个组件提供了一些方法,可以帮助我们快速方便地实现此目的。

添加页眉步骤:

首先,创建一个Visual C#控制台项目,添加组件引用并使用以下命名空间。

using System;
 System.Drawing;
 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 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),);
    PdfStringFormat format =  PdfStringFormat(PdfTextAlignment.Right);
    String  Text = PDF文本页眉";
    float y = 0float 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,);
    topSpace.Graphics.DrawImage(headerImage,2,height/2);         
}

接下来再创建一个PDF文档,主函数调用SetDocumentTemplate()方法将带有文本和图片页眉的模板应用到新建的PDF文档中。具体步骤:

第一步:创建一个PDF文档对象。

PdfDocument doc = new PdfDocument();

第二步:设置页边距。

PdfUnitConvertor unitCvtr =  PdfUnitConvertor();
PdfMargins margin =  PdfMargins();
margin.Top = unitCvtr.ConvertUnits(2.54f,PdfGraphicsUnit.Centimeter,PdfGraphicsUnit.Point);
margin.Bottom = margin.Top;
margin.Left = unitCvtr.ConvertUnits(4.17f
SetDocumentTemplate(doc,pdfpageSize.A4,margin);

第四步:PDF文档添加页面

pdfpageBase page = doc.Pages.Add();
doc.Pages.Add();

第五步:保存并打开文档。

doc.SavetoFile(页眉.pdf);
System.Diagnostics.Process.Start(");

添加页眉后的效果图:

全部代码

 1  2  3  4  Spire.Pdf.Graphics;
 5 
 6 namespace PDF添加页眉
 7 {
 8     class Program
 9     {
10         void Main(string[] args)
11         {
12             PdfDocument doc =  PdfDocument();
13 
14             PdfUnitConvertor unitCvtr =  PdfUnitConvertor();
15             PdfMargins margin =  PdfMargins();
16             margin.Top = unitCvtr.ConvertUnits(17             margin.Bottom = margin.Top;
18             margin.Left = unitCvtr.ConvertUnits(19             margin.Right = margin.Left;
20 
21             SetDocumentTemplate(doc,margin);
22             pdfpageBase page = doc.Pages.Add();
23             doc.Pages.Add();
24 
25             doc.SavetoFile();
26             System.Diagnostics.Process.Start(27         }
28 
29         30 31             pdfpageTemplateElement topSpace = 32             topSpace.Foreground = ;
33             doc.Template.Top = topSpace;
34            
35             PdfTrueTypeFont font1 = 36             PdfStringFormat format =  PdfStringFormat(PdfTextAlignment.Right);
37             String  Text = 38             39              pdfpageSize.A4.Width;
40             topSpace.Graphics.DrawString(Text,format);
41             
42             PdfImage headerImage = PdfImage.FromFile(C:\Users\Administrator\Pictures\under_construction.jpg43              headerImage.Width;
44              headerImage.Height;
45             PointF pageLeftTop = 46             topSpace.Graphics.DrawImage(headerImage,width / 47 48     }
49 }
View Code

谢谢浏览!

 

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐