asp.net生成PDF文件参考 .
TextSharp 是用来生成 PDF 的一个组件,在 1998 年夏天的时候,Bruno Lowagie ,iText 的创作者,参与了学校的一个项目,当时使用 HTML 来生成报告,但是,使用 HTML 打印的效果很不理想。最后,他发现,使用 PDF 可以完美解决打印问题,为了能够在各个系统中使用,iText 组件库诞生了。

最初的 iText 主要是支持 Java 語言。之後針對Microsoft .NET C Sharp做了一個版本,也就是我們今天要介紹的 iTextSharp。
目前,iTextSharp 的版本是 5.1.2,下载地址:http://sourceforge.net/projects/itextsharp/files/
其中主要包含了核心组件:itextsharp.dll

但是,直接使用它并不能处理中文,你还要下载两个组件。
在下载页面中,注意图中标注的 extras 文件夹。

点击之后,可以看到如下的下载:

注意把标注的两个压缩包下载下来,这是使用中文的关键。解开两个压缩之后可以看到下面的两个文件。
iTextAsianCmaps.dll
iTextAsian.dll
在创建的项目中,将这三个程序集都添加到项目的引用中。
// 必须先加入资源BaseFont.AddToResourceSearch("iTextAsian.dll");BaseFont.AddToResourceSearch("iTextAsianCmaps.dll");//"UniGB-UCS2-H" "UniGB-UCS2-V"是简体中文,分别表示横向字 和 纵向字//"STSong-Light"是字体名称BaseFont bf = BaseFont.CreateFont("STSong-Light","UniGB-UCS2-H", BaseFont.EMBEDDED);// 也可以使用 TTF 字体BaseFont bf0 = BaseFont.CreateFont("C:/WINDOWS/Fonts/SIMYOU.TTF", BaseFont.IDENTITY_H, BaseFont.NOT_EMBEDDED);// 创建 PDF 文档iTextSharp.text.Document document =new iTextSharp.text.Document();// 创建写入器实例,PDF 文件将会保存到这里iTextSharp.text.pdf.PdfWriter.GetInstance(document, newSystem.IO.FileStream("Demo.pdf", System.IO.FileMode.Create) );// 打开文档document.Open();iTextSharp.text.Font font =new iTextSharp.text.Font(bf);//写入一个段落, Paragraphdocument.Add(newParagraph("你好, PDF !", font));document.Close();
using System;using System.Data;using System.Configuration;using System.Web;using System.Web.Security;using System.Web.UI;using System.Web.UI.WebControls;using System.Web.UI.WebControls.WebParts;using System.Web.UI.HtmlControls;using System.IO;usingiTextSharp;usingiTextSharp.text;usingiTextSharp.text.pdf;publicpartial class_Default : System.Web.UI.Page { staticDataTable datatable = newDataTable("testpdf"); protectedvoid Page_Load(objectsender, EventArgs e) { if(!Page.IsPostBack) { DataRow dr; //建立Column例,可以指明例的类型,这里用的是默认的string datatable.Columns.Add(newDataColumn("编号")); datatable.Columns.Add(newDataColumn("用户名")); for(int i = 1; i < 5; i++) { dr = datatable.NewRow(); dr[0] = System.Convert.ToString(i); dr[1] ="测试" + System.Convert.ToString(i); datatable.Rows.Add(dr); } } } protectedvoid Button1_Click(objectsender, EventArgs e) { try { Document document =new Document(); PdfWriter.GetInstance(document,new FileStream(Server.MapPath("Test.pdf"), FileMode.Create)); document.Open(); BaseFont bfChinese = BaseFont.CreateFont("C:\\WINDOWS\\Fonts\\simsun.ttc,1", BaseFont.IDENTITY_H, BaseFont.NOT_EMBEDDED); Font fontChinese =new Font(bfChinese, 12, Font.NORMAL,newColor(0, 0, 0)); //按设置的字体输出文本 document.Add(newParagraph(this.TextBox1.Text.ToString(), fontChinese)); //输出图片到PDF文件 iTextSharp.text.Image jpeg01 = iTextSharp.text.Image.GetInstance(Server.MapPath("Images/gyl.jpg")); document.Add(jpeg01); iTextSharp.text.Image jpeg02 = iTextSharp.text.Image.GetInstance(Server.MapPath("Images/yy.jpg")); document.Add(jpeg02); PdfPTable table =new PdfPTable(datatable.Columns.Count); for(int i = 0; i < datatable.Rows.Count; i++) { for(int j = 0; j < datatable.Columns.Count; j++) { table.AddCell(newPhrase(datatable.Rows[i][j].ToString(), fontChinese)); } } document.Add(table); document.Close(); Response.Write("<script>alert('导出成功!');</script>"); } catch(DocumentException de) { Response.Write(de.ToString()); } }}
asp.net生成PDF文件参考 .的更多相关文章
- asp.net生成PDF文件 (1)
asp.net生成PDF文件 (1) 这个是例子是网上淘来的,哈哈,很有用的! 首先要到网上下载itextsharp.dll,然后添加引用,主程序如下: 1 2 3 4 5 6 7 8 9 10 11 ...
- asp.net生成PDF文件(一)
这个是例子是网上淘来的,哈哈,很有用的! 首先要到网上下载itextsharp.dll,然后添加引用,主程序如下: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 ...
- itextsharp c# asp.net 生成 pdf 文件
一切的开始必须要有2个dll, 可以通过nuget 包xiazai, 关键字是itextsharp. using iTextSharp.text; using iTextSharp.text.pdf; ...
- 在C#.NET中,如何生成PDF文件?主要有以下几个途径
1.使用.NET文件流技术:若通过.NET的文件流技术生成PDF文件,必须对PDF文件的语法很清楚,例如BT表示实体内容开始:ET表示实体内容结束:TD表示换行等等.我们可以从Adobe的官方网站上下 ...
- java调用wkhtmltopdf生成pdf文件,美观,省事
最近项目需要导出企业风险报告,文件格式为pdf,于是搜了一大批文章都是什么Jasper Report,iText ,flying sauser ,都尝试了一遍,感觉不是我想要的效果, 需要自己调整好多 ...
- 在js内生成PDF文件并下载的功能实现(不调用后端),以及生成pdf时换行的格式不被渲染,word-break:break-all
在js内生成PDF文件并下载的功能实现(不调用后端),以及生成pdf时换行的格式不被渲染,word-break:break-all 前天来了个新需求, 有一个授权书的文件要点击下载, 需要在前端生成, ...
- JavaWeb项目生成PDF文件添加水印图片并导出
一.前言 首先需要在Maven中添加相应的jar包依赖,若项目没用到Maven,也可自行下载相应所需的jar包(itextpdf.jar 与 itext-asian.jar),如下图所示.点此下载 M ...
- 小容量单片机生成pdf文件
工作上要求使用小容量单片机生成直接生成pdf文件.经过一段时间的摸索,其中参考了libharu,库太大,不适合在单片机上使用页参考了与非网上一位前辈的库,占用的RAM太大,不适合小容量单片机,主要资料 ...
- [itext]Java生成PDF文件
一.前言 最近在做也导出试卷的功能,刚开始是导出为doc,可是导出来格式都有变化,最后说直接将word转为pdf,可是各种不稳定,各种报错.最后想到直接将文件写入pdf(参考:http://www.c ...
随机推荐
- Scala IDEA for Eclipse里用maven来创建scala和java项目代码环境(图文详解)
这篇博客 是在Scala IDEA for Eclipse里手动创建scala代码编写环境. Scala IDE for Eclipse的下载.安装和WordCount的初步使用(本地模式和集群模式) ...
- centos7.x设置nginx开机自启动
设置nginx开机自启动(centos7.x) 第一步:进入到/lib/systemd/system/目录 [root@iz2z init.d]# cd /lib/systemd/system/ 第二 ...
- Jenkins 中创建项目时没有Maven项目怎么办
如果在创建项目时候,没有“创建一个Maven 项目”的选项. 你需要安装Maven项目插件:Maven Integration plugin . 点击“可选插件” 然后在右边的过滤输入框中输入搜索关 ...
- HTTPS 使用成本
HTTPS 目前唯一的问题就是它还没有得到大规模应用,受到的关注和研究都比较少.至于使用成本和额外开销,完全不用太过担心. 一般来讲,使用 HTTPS 前大家可能会非常关注如下问题: 证书费用以及更新 ...
- 《TCP/IP详解》
TCP/IP概述 Transmission Control Protocol/Internet Protocol的简写,中译名为传输控制协议/因特网互联协议,又名网络通讯协议,是Internet最基本 ...
- [转]How to get return values and output values from a stored procedure with EF Core?
本文转自:https://stackoverflow.com/questions/43935345/how-to-get-return-values-and-output-values-from-a- ...
- Orchard源码:EventBus&EventHandler
概述 看源码是一件吃力又很爽的事情,昨天还被搞的一头雾水,今天忽然守得云开见月明.明白它设计意图的同时,感觉自己又提升了一步:) Orchard刚开始看往往毫无头绪,建议可以从Orchard.Fram ...
- Win7系统下网站发布IIS配置
*本帖为个人收集贴,所有版权归:西门的后花园 http://ons.me* Technorati 标记: IIS,网站,发布,配置 一.首先是安装IIS.打开控制面板,找到“程序与功能”,点进去 二. ...
- WCF4.0安装 NET.TCP启用及常见问题
WCF4.0安装及NET.TCP启用 WCF 4.0 一般默认安装.net Framework 4.0的时候已经安装. 但如果先装.net framework 4.0,后装IIS,就会出现问题.需要重 ...
- Groovy中的操作符重载
操作者 方法 a + b a.plus(b)中 a - b a.minus(b)中 a * b a.multiply(b)中 a ** b a.power(b)中 a / b a.div(b)中 a ...