PDF按模板出力,多个PDF合并
| const string TEMP_PREXFIX = "Temp_"; | ||||||||||||||||
| string _tempfilename01; | ||||||||||||||||
| PdfReader _pdfReader = null; | ||||||||||||||||
| BaseFont _baseFont = null; | ||||||||||||||||
| PdfStamper _pdfStamper = null; | ||||||||||||||||
| string _sourcefilename01 = ".\\PDF\\faxcre01.pdf"; | ||||||||||||||||
| string _targetfilename01 = ".\\PDF\\faxcre01_生成.pdf"; | ||||||||||||||||
| string fileName01 = Path.GetFileName(_targetfilename01); | ||||||||||||||||
| string path = Path.GetDirectoryName(_targetfilename01); | ||||||||||||||||
| _tempfilename01 = path + @"\TEMP\" + TEMP_PREXFIX + fileName01; | ||||||||||||||||
| _baseFont = BaseFont.CreateFont(@"c:\windows\fonts\msmincho.ttc,0", BaseFont.IDENTITY_H, BaseFont.NOT_EMBEDDED); | ||||||||||||||||
| BaseFont bfTimes = BaseFont.CreateFont(@"c:\windows\fonts\msmincho.ttc,0", BaseFont.IDENTITY_H, BaseFont.NOT_EMBEDDED); | ||||||||||||||||
| iTextSharp.text.Font times = new Font(bfTimes, 12, iTextSharp.text.Font.BOLD, iTextSharp.text.BaseColor.RED); | ||||||||||||||||
| Font palatino = FontFactory.GetFont(@"c:\windows\fonts\msmincho.ttc,0", BaseFont.CP1252, BaseFont.EMBEDDED, 10, Font.ITALIC, BaseColor.GREEN); | ||||||||||||||||
| //--------------------template1-------------------- | ||||||||||||||||
| FileStream ReadPdf = new FileStream(_tempfilename01, FileMode.Create); | ||||||||||||||||
| //pdf reader | ||||||||||||||||
| _pdfReader = new PdfReader(_sourcefilename01); | ||||||||||||||||
| _pdfStamper = new PdfStamper(_pdfReader, ReadPdf); | ||||||||||||||||
| _pdfStamper.AcroFields.AddSubstitutionFont(_baseFont); | ||||||||||||||||
| ////set field: MSゴシック | ||||||||||||||||
| //_pdfStamper.AcroFields.SetFieldProperty("f_print_date", "textfont", _baseFont, null); | ||||||||||||||||
| //_pdfStamper.AcroFields.SetFieldProperty("f_print_time", "textfont", _baseFont, null); | ||||||||||||||||
| //_pdfStamper.AcroFields.SetFieldProperty("f_jusyo_kana", "textfont", _baseFont, null); | ||||||||||||||||
| //_pdfStamper.AcroFields.SetFieldProperty("f_hoken_syurui", "textfont", _baseFont, null); | ||||||||||||||||
| //_pdfStamper.AcroFields.SetFieldProperty("f_sfx_info1", "textfont", _baseFont, null); | ||||||||||||||||
| //_pdfStamper.AcroFields.SetFieldProperty("f_sfx_info2", "textfont", _baseFont, null); | ||||||||||||||||
| //Font font = FontFactory.GetFont(FontFactory.COURIER, 8f, iTextSharp.text.Font.BOLD); | ||||||||||||||||
| ////_pdfStamper.AcroFields.SetFieldProperty("f_sfx_info2", "textfont", font.BaseFont, null); | ||||||||||||||||
| //_pdfStamper.AcroFields.SetFieldProperty("f_sfx_info2", "textfont", times.ToString(), null); | ||||||||||||||||
| Font font = new Font(_baseFont, 8f, iTextSharp.text.Font.BOLD); | ||||||||||||||||
| FontFactory.Register(@"c:\windows\fonts\msmincho.ttc,0", "myFont"); | ||||||||||||||||
| //FontFactory.GetFont(FontFactory.GetFont("myFont").ToString(), 28,iTextSharp.text.BaseColor.RED); | ||||||||||||||||
| Font myFont = FontFactory.GetFont("myFont"); | ||||||||||||||||
| //Font myFont = FontFactory.GetFont("myFont", 56, Font.BOLD); | ||||||||||||||||
| BaseFont bf = myFont.BaseFont; | ||||||||||||||||
| _pdfStamper.AcroFields.SetFieldProperty("f_print_date", "textfont", bf, null); | ||||||||||||||||
| _pdfStamper.AcroFields.SetFieldProperty("f_print_time", "textfont", bf, null); | ||||||||||||||||
| _pdfStamper.AcroFields.SetFieldProperty("f_jusyo_kana", "textfont", bf, null); | ||||||||||||||||
| _pdfStamper.AcroFields.SetFieldProperty("f_hoken_syurui", "textfont", bf, null); | ||||||||||||||||
| _pdfStamper.AcroFields.SetFieldProperty("f_sfx_info1", "textfont", bf, null); | ||||||||||||||||
| _pdfStamper.AcroFields.SetFieldProperty("f_sfx_info2", "textfont", _baseFont, null); | ||||||||||||||||
| _pdfStamper.AcroFields.SetField("f_print_date", "2016/7/07"); | ||||||||||||||||
| _pdfStamper.AcroFields.SetField("f_print_time", "13:21"); | ||||||||||||||||
| _pdfStamper.AcroFields.SetField("f_jikoseiribango", "1332658-9"); | ||||||||||||||||
| _pdfStamper.AcroFields.SetField("f_karino", "040A0001664"); | ||||||||||||||||
| //編集不可設定 | ||||||||||||||||
| _pdfStamper.FormFlattening = true; | ||||||||||||||||
| _pdfStamper.Close(); | ||||||||||||||||
| _pdfReader.Close(); | ||||||||||||||||
| ReadPdf.Close(); | ||||||||||||||||
| // 合成pdf文件 | ||||||||||||||||
| string _targetfilename = "faxcre_000.pdf"; | ||||||||||||||||
| string _tempfilename = path + @"\TEMP\" + TEMP_PREXFIX + _targetfilename; | ||||||||||||||||
| PdfReader reader01; | ||||||||||||||||
| Document document = new Document(); | ||||||||||||||||
| PdfSmartCopy copy = new PdfSmartCopy(document, new FileStream(_tempfilename, FileMode.Create)); | ||||||||||||||||
| document.Open(); | ||||||||||||||||
| reader01 = new PdfReader(_tempfilename01); | ||||||||||||||||
| copy.AddDocument(reader01); | ||||||||||||||||
| reader01.Close(); | ||||||||||||||||
| if (File.Exists(_tempfilename01)) | ||||||||||||||||
| { | ||||||||||||||||
| File.Delete(_tempfilename01); | ||||||||||||||||
| } | ||||||||||||||||
| _pdfStamper.Dispose(); | ||||||||||||||||
| _pdfReader.Dispose(); | ||||||||||||||||
| ReadPdf.Dispose(); | ||||||||||||||||
| document.Close(); | ||||||||||||||||
PDF按模板出力,多个PDF合并的更多相关文章
- java根据模板HTML动态生成PDF
原文:https://segmentfault.com/a/1190000009160184 一.需求说明:根据业务需要,需要在服务器端生成可动态配置的PDF文档,方便数据可视化查看. 二.解决方案: ...
- pdf 使用模板下载
//根据模板下载模板 /** * * 政策5-8条的创建的pdf的模板 */public String createPdfCashTemplate(PdfCashParam pdfCashParam) ...
- iTextSharp生成pdf含模板(二)---C#代码部分
参考地址:https://www.cnblogs.com/ibeisha/p/itextsharp-pdf.html 一.先在程序中使用Nuget安装iTextSharp(我是创建的控制台程序) 二. ...
- 使用pdf文本域模板生成对应的pdf
第一步: 下载jar包 <!-- itext的pdf的依赖--> <dependency> <groupId>com.itextpdf</groupId> ...
- 【PDF】java使用Itext生成pdf文档--详解
[API接口] 一.Itext简介 API地址:javadoc/index.html:如 D:/MyJAR/原JAR包/PDF/itext-5.5.3/itextpdf-5.5.3-javadoc/ ...
- 【强大的PDF格式转换工具】Lighten PDF Converter OCR for Mac 6.2.0
[简介] Lighten PDF Converter OCR 是一款Mac上强大的PDF格式转换工具,可以将PDF文档快速批量的转换为Office (Word, Excel, PowerPoint), ...
- Word转pdf,再转图片插入PDF
WORD转PDF所需jar包: https://yangtaotao.lanzous.com/ice1jlc PDF转图片所需jar包: https://yangtaotao.lanzous.com/ ...
- 插件Spire.PDF帮你高效搞定PDF打印
Spire.PDF介绍 Spire.PDF是一个专业的PDF组件,能够独立地创建.编写.编辑.操作和阅读PDF文件,支持 .NET.Java.WPF和Silverlight.Spire.PDF的PDF ...
- 【使用Itext处理PDF文档(新建PDF文件、修改PDF文件、PDF中插入图片、将PDF文件转换为图片)】
iText简介 iText是著名的开放源码的站点sourceforge一个项目,是用于生成PDF文档的一个java类库.通过iText不仅可以生成PDF或rtf的文档,而且可以将XML.Html文件转 ...
随机推荐
- Castle
Castle AOP 系列(一):对类方法调用的拦截(有源码) 标签: aopAOPCastle对类方法调用的拦截 2012-11-09 16:51 4207人阅读 评论(1) 收藏 举报 分类: ...
- WITH SCHEMABINDING
SCHEMABINDING 选项,防止视图所引用的表在视图未被调整的情况下发生改变的选项. 也就是说,一旦视图被指定了WITH SCHEMABINDING 选项,那么,在修改用于 ...
- httpd-2.2
http://httpd.apache.org/docs/2.2/logs.html httpd.conf文件 Configuration and logfile names: If the file ...
- 服务器能访问共享,但是ping不通解决方案
今天发现客户反映后台连不上数据库,远程程查看之后发现机器可以访问服务器共享,但是ping网络的时候ping不通.Ip设置也没问题,网络也都连上了,而且客户反映他们那其它机器都能连上. 百度了一下,发现 ...
- ASP.NET MVC2中Controller向View传递数据的三种方式
转自:http://www.cnblogs.com/zhuqil/archive/2010/08/03/Passing-Data-from-Controllers-to-View.html 在Asp. ...
- mybatis 中的稍微复杂些的sql语句
mybatis 中的稍微复杂些的sql语句: <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYP ...
- [oracle] ORA-08002:序列XXXXXXX.CURRVAL尚未在此进程中定义
出现 ORA-08002: 序列XXXXXXX.CURRVAL 尚未在此进程中定义. 导致原因:因为是首次查询序列的当前值,内存中之前并没有缓存序列的任何值,所以需要先查询 一下序列的下一个值(此时, ...
- 【linux】windows和linux编码相互转换
windows-->linux:dos2unix file linux-->windows:unix2dos file
- 【Andorid开发框架学习】之Mina开发之客户端开发
昨天我们讲到了Mina的基本知识点.如果还有不懂得同学可以看一下我昨天的博客.http://www.cnblogs.com/getherBlog/p/3934927.html今天我着重来讲一下基于Mi ...
- 水晶报表连接Oracle做数据报表笔记
首先,新建一个水晶报表的文件,这个时候要给这个报表文件绑定一个oracle数据源, 选择右侧菜单的这个东西,选择“数据库专家”,打开之后是这么一个界面: 选择建立新连接: 这个地方最关键,也是我为什么 ...