ASP.NET 转自定内容到 PDF - 使用 iTextSharp

Posted petewell

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ASP.NET 转自定内容到 PDF - 使用 iTextSharp相关的知识,希望对你有一定的参考价值。

摘要:ASP.NET 转自定内容到 PDF - 使用 iTextSharp


?前一篇讲到“ASP.NET 轻松转 GridView 数据转档到 PDF - 使用 iTextSharp”,利用很简单几乎不用做更动的方式,就可以轻松的将 Gridview 数据转到 PDF,而这一篇要说是手动的依序加入 PDF 的内容。

相关 iTextSharp 安装及下载请参考前一篇!

题目:这次的例子是要在 PDF 里加入几段的英文及中文的内容,并且插入图片到其中!我们就直接利用程序来做说明~

其他要求:

  1. 选用特定中文字
  2. 配置文件案输出的目录

先看执行的结果

技术图片

首先~先在项目里新增一个 PDFs 的目录,目的是用来存放产出的 PDF 文件目录。
技术图片

程序片段

-------

Protected?Sub?btnpdfexport_Click(ByVal?sender?As?Object,?ByVal?e?As?EventArgs)?Handles?btnpdfexport.Click
???Dim?doc1?As?Document =?New?Document?‘声明?Document?文档
???Dim?path?As?String?= Server.MapPath("PDFs")?‘默认文件存放的路径
???Dim?filename?As?String?=?"test"?‘文件名称
???Dim?para1?As?String?=?"AAAAAAAAAAAA"?+ vbCrLf +?"BBBBBBBBBBBB"?+ vbCrLf +?"CCCCCCCCCC"?‘文字段落1。要跳行要用?vbCrLf?。
???Dim?para2?As?String?=?"我是中文字~大家好....."?+ vbCrLf +?"我是中文字~大家好....."?‘文字段落2
?? PdfWriter.GetInstance(doc1,?New?FileStream(path +?"/"?+ doi +?".pdf", FileMode.Create))
?? doc1.Open()‘开启文档
???Dim?jpgx?As?iTextSharp.text.Image = iTextSharp.text.Image.GetInstance(path +?"/photo.jpg")?‘声明要插入的图片文件
???Dim?fontpath?As?String?= Environment.GetFolderPath(Environment.SpecialFolder.System) +?"..Fontsdft_yf3.ttc"‘设定选用文字模式的文件
?? FontFactory.Register(fontpath)?‘登记文字模式路径
???Dim?fontchinese?As?Font = FontFactory.GetFont("华康雅风体W3(P)", BaseFont.IDENTITY_H, 16.0F)?‘声明文字模式。请注意这边所使用的字型名称,必须跟前面声明使用的字型档同一个,才能正常显示中文,不然你只会得到“……”。并且如果字型档描述该有?W3(P)?之类的也必须加入,少了一样中文字会出不来。
???Dim?content?As?iTextSharp.text.Paragraph =?New?iTextSharp.text.Paragraph(""?+ filename + vbCrLf + para1 + vbCr + para2 + vbCrLf, fontchinese)?‘将文字段落串起来,并设定文字模式
?? doc1.Add(jpgx)?‘插入?JPG/GIF?图片
?? doc1.Add(content)?‘插入文字段落内容
?? doc1.Close()?‘?关闭输出文档
?? Response.Redirect("~/PDFs/"?+ filename +?".pdf")?‘?利用?response.redirect?开始刚刚存的?PDF?文件,若无此行则单纯存入不会直接显示文档内容
End?Sub

--20101011 updated-----

QQ:换页、换页符号该怎么做?

A:只要在 Doc.add 串文档时,利用“doc1.NewPage()”就可以达到换页功能的效果了!

-------

这个例子不算太难,但 iTextSharp 实际提供的功能更强,这只是很粗略的使用,下一次在来讨论怎么样在 PDF 里绘制表格。

-------

范例文件 Tutorial:

  • C#:http://prdownloads.sourceforge.net/itextsharp/iTextSharp.tutorial.01.zip?download?
  • VB:http://prdownloads.sourceforge.net/itextsharp/iTextSharp.tutorial.VB.NET.01.zip?download

~ End



原文:大专栏  ASP.NET 转自定内容到 PDF - 使用 iTextSharp


以上是关于ASP.NET 转自定内容到 PDF - 使用 iTextSharp的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 asp.net 从路径或文件夹下载 PDF 文件

如何使用 asp.net 将 gridview 图像和数据导出到 PDF 或使用 asp.net 将 gridview 数据导出到 PDF

提交到 ASP.NET 页面的 PDF 表单创建返回 HTML 文件

如何从 ASP.NET 中的 Web 请求返回 pdf?

asp.net如何在线预览pdf

使用 s-s-rS 和 ASP.NET 合并以 Pdf 格式生成的报告