c/softtech/biancheng/221290.html">color: #ff0000">前言
下面這篇文章向大家分享如何使用了免費組件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#能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對VEVB武林網的支持。
新聞熱點
疑難解答