C#实现PDF文件添加图片背景
本文实例讲述了C#使用iTextSharp设置PDF所有页面背景图功能的方法。分享给大家供大家参考。具体如下:
在生成PDF 的时候,虽然可以在页面中设置背景图。
但有些内容过长夸页面的时候,就很难设置背景图,变成了空白背景的页面!
以下是重新生成每一页PDF背景图功能代码!
public void SetPdfBackground(string pdfFilePath) { //重新生成的 PDF 的路径 string destFile = HttpContext.Current.Server.MapPath("sample.pdf"); //create new pdf document FileStream stream = new FileStream(destFile, FileMode.Create, FileAccess.ReadWrite); PdfReader reader = new PdfReader(pdfFilePath); //read pdf stream PdfStamper stamper = new PdfStamper(reader, stream); string imagePage = HttpContext.Current.Server.MapPath("../images/2012/bg2.png"); System.Drawing.Image image = System.Drawing.Image.FromFile(imagePage); var img = Image.GetInstance(image, System.Drawing.Imaging.ImageFormat.Png); img.SetAbsolutePosition(0, 0); int totalPage = reader.NumberOfPages; for (int current = 1; current <= totalPage; current++) { var canvas = stamper.GetUnderContent(current); var page = stamper.GetImportedPage(reader, current); canvas.AddImage(img); } stamper.Close(); reader.Close(); }
下面还是实现的是给PDF文件添加图片背景这个功能。PDF是近年来最流行的文件之一,无论是办公还是日常生活中都经常会用到,很多时候,PDF文件的背景色都是白色,看多了难免觉得累,更换PDF的背景不仅可以让眼睛看起来更舒服,还可以让PDF文件看上去更美观。如何实现?
作为一名程序猿,当然要亲自“操刀上阵”,主要写的是如何使用C# 给PDF文件添加图片背景。
首先准备的PDF文件,下面讲一下具体代码:
代码使用:
第一步:创建一个Visual C#控制台项目,添加引用并使用命名空间。
using System.Drawing; using Spire.Pdf;
第二步:创建一个PDF文档对象,并加载源PDF文件。
PdfDocument doc = new PdfDocument(); doc.LoadFromFile("sample.pdf");
第三步:获取该PDF文件的第一页。
PdfPageBase page = doc.Pages[0];
第四步:加载图片并把它设置为页面背景。
Image backgroundImage = Image.FromFile("background.jpg"); page.BackgroundImage = backgroundImage;
第五步:保存文件并重新打开。
doc.SaveToFile("result.pdf"); System.Diagnostics.Process.Start("result.pdf");
放上全部代码:
using System.Drawing; using Spire.Pdf; namespace Add_image_background_to_PDF { class Program { static void Main(string[] args) { PdfDocument doc = new PdfDocument(); doc.LoadFromFile("sample.pdf"); PdfPageBase page = doc.Pages[0]; Image backgroundImage = Image.FromFile("background.jpg"); page.BackgroundImage = backgroundImage; doc.SaveToFile("result.pdf"); System.Diagnostics.Process.Start("result.pdf"); } } }
总结:
PDF虽不是微软的办公软件,但却因为它有诸多优点,而被广泛使用。PDF本身相较于Word和Excel等文件更不容易被编辑,而需要借用其它的组件,在这个示例中我使用的是E-iceblue公司的免费PDF组件,就目前来看我想要的功能基本上都能满足,也比较方便。
您可能感兴趣的文章
- 01-10C#实现txt定位指定行完整实例
- 01-10WinForm实现仿视频 器左下角滚动新闻效果的方法
- 01-10C#实现清空回收站的方法
- 01-10C#实现读取注册表监控当前操作系统已安装软件变化的方法
- 01-10C#实现多线程下载文件的方法
- 01-10C#实现Winform中打开网页页面的方法
- 01-10C#实现远程关闭计算机或重启计算机的方法
- 01-10C#自定义签名章实现方法
- 01-10C#文件断点续传实现方法
- 01-10winform实现创建最前端窗体的方法
阅读排行
本栏相关
- 01-10C#通过反射获取当前工程中所有窗体并
- 01-10关于ASP网页无法打开的解决方案
- 01-10WinForm限制窗体不能移到屏幕外的方法
- 01-10WinForm绘制圆角的方法
- 01-10C#实现txt定位指定行完整实例
- 01-10WinForm实现仿视频 器左下角滚动新
- 01-10C#停止线程的方法
- 01-10C#实现清空回收站的方法
- 01-10C#通过重写Panel改变边框颜色与宽度的
- 01-10C#实现读取注册表监控当前操作系统已
随机阅读
- 04-02jquery与jsp,用jquery
- 01-10delphi制作wav文件的方法
- 01-10使用C语言求解扑克牌的顺子及n个骰子
- 08-05dedecms(织梦)副栏目数量限制代码修改
- 01-10C#中split用法实例总结
- 01-11Mac OSX 打开原生自带读写NTFS功能(图文
- 01-10SublimeText编译C开发环境设置
- 08-05织梦dedecms什么时候用栏目交叉功能?
- 01-11ajax实现页面的局部加载
- 08-05DEDE织梦data目录下的sessions文件夹有什