ImageVerifierCode 换一换
格式:DOCX , 页数:7 ,大小:24.22KB ,
资源ID:6418623      下载积分:10 金币
快捷注册下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/6418623.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

开通VIP折扣优惠下载文档

            查看会员权益                  [ 下载后找不到文档?]

填表反馈(24小时):  下载求助     关注领币    退款申请

开具发票请登录PC端进行申请

   平台协调中心        【在线客服】        免费申请共赢上传

权利声明

1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。

注意事项

本文(利用itext生成复杂pdf.docx)为本站上传会员【pc****0】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4009-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

利用itext生成复杂pdf.docx

1、 利用itext生成复杂pdf 内容包括: 复杂表格的生成(单元格合并,边框,位置布局,背景色) 页脚输出,中文字体输出 划直线 下载包 iText-5.0.3.jar import java.io.FileOutputStream; import java.io.IOException; import .MalformedURLException; import com.itextpdf.text.*; import com.itextpdf.text.pdf.BaseFont; import com.itextpdf

2、text.pdf.CMYKColor; import com.itextpdf.text.pdf.ColumnText; import com.itextpdf.text.pdf.PdfPCell; import com.itextpdf.text.pdf.PdfPTable; import com.itextpdf.text.pdf.PdfWriter; import com.itextpdf.text.pdf.draw.LineSeparator; public class ITextTest{ // public void onEndPage(PdfWriter pd

3、fWriter, Document document) { // ColumnText.showTextAligned(pdfWriter.getDirectContent(), // Element.ALIGN_CENTER,new Phrase(String.format("page %d", //设置页码 // pdfWriter.getPageNumber())),300,50,0); // } public static void main(String[] args) throws DocumentException, Malfo

4、rmedURLException, IOException { // 1、实例化文档对象 Document document = new Document(PageSize.A4, 37, 30, 50, 40); // 2、创建 PdfWriter 对象(其他编写器包括HtmlWriter、RtfWriter、XmlWriter) PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream("d:\\new.pdf")); //生成的pdf存放位置 docu

5、ment.open(); //中文字体格式 // BaseFont bfChinese = BaseFont.createFont("SIMYOU.TTF", //SIMYOU.TTF在本地目录下去拷贝C:/WINDOWS/Fonts/SIMYOU.TTF // BaseFont.IDENTITY_H,BaseFont.NOT_EMBEDDED); // Font FontChinese = new Font(bfChinese, 12, Font.NORMAL); Font font1=FontFactory.getFont(Font

6、Factory.COURIER,8, Font.BOLD,BaseColor.BLACK); Font font2=FontFactory.getFont(FontFactory.COURIER,8, Font.NORMAL,BaseColor.BLACK); Font font3=FontFactory.getFont(FontFactory.COURIER,9, Font.NORMAL,BaseColor.GRAY); Font font5=FontFactory.getFont(FontFactory.COURIER,8, Font.NORMAL,BaseColor.B

7、LACK); //设置页脚 LineSeparator line=new LineSeparator(0.5f,1.3f,BaseColor.CYAN,Element.ALIGN_CENTER,0); //直线 Chunk c=new Chunk(line); //line不能直接放入Paragraph或Phrase中 ColumnText.showTextAligned(writer.getDirectContent(),

8、 1,new Paragraph(String.format("Notes"),font3),55,55,0);//通过坐标控制显示位置 ColumnText.showTextAligned(writer.getDirectContent(), Element.ALIGN_CENTER,new Paragraph(c),300,50,0); //设置页码 // ColumnText.showTextAligned(writer.getDirectContent(), // Element.ALIGN_CENTER,new Phrase(Stri

9、ng.format("page %d", // writer.getPageNumber())),300,50,0); // document.newPage(); PdfPTable t = new PdfPTable(2);//创建表格 t.setWidthPercentage(100);//百分比 t.setSpacingBefore(20); //表格元素1 Image image1 = Image.getInstance("1.jpg"); image1.scaleAbsolute(170f, 100f);//宽、高

10、 PdfPCell c1 = new PdfPCell(); c1.addElement(image1); Paragraph []parr=new Paragraph[16]; parr[0] = new Paragraph("Zycoo EU",font1); parr[1] = new Paragraph("LS 21 Armstrong House,First Avenue",font2); parr[2] = new Paragraph("Doncaster south yorkshire DN9 3GA",font2); parr[3] =

11、new Paragraph("United Kingdom",font2); parr[4] = new Paragraph("VAT GB2065852514",font2); for(int i=0;i<5;i++){ c1.addElement(parr[i]); } c1.setBorder(0); //设置单元格边框的无颜色 t.addCell(c1); //表格元素2 Image image2 = Image.getInstance("2.jpg"); image2.setAlignment

12、Image.RIGHT); image2.scaleAbsolute(110f, 110f);//宽、高,值为像素 PdfPCell c2 = new PdfPCell(); c2.addElement(image2); //设置图像对齐方式 c2.setBorder(0); // t.addCell(c2); //表格元素3 parr[5] = new Paragraph("Bill To",font2); parr[6]= new Paragraph("A Time 2 Change T/A VoIP.PT"

13、font2); parr[7]= new Paragraph("Rua Consiglieri Pedroso, 123 (Iberfar)",font2); parr[8]= new Paragraph("Edificio H ",font2); PdfPCell c3 = new PdfPCell(); c3.addElement(new Paragraph(" ")); for(int i=5;i<8;i++) c3.addElement(parr[i]); c3.setBorder(0); t.addCell(c3); //元素

14、4 PdfPCell c4 = new PdfPCell(); c4.setBorder(0); t.addCell(c4); //元素5 PdfPCell c5 = new PdfPCell(); parr[9]= new Paragraph("Queluz de Baixo",font2); parr[10]= new Paragraph("2730-501 Barcarena ",font2); parr[11]= new Paragraph("Portugal",font2); c5.addElement(new Paragraph

15、" ")); for(int i=9;i<12;i++) c5.addElement(parr[i]); c5.setBorder(0); t.addCell(c5); //元素6 PdfPCell c6 = new PdfPCell(); c6.setBorder(0); t.addCell(c6); //元素7 PdfPCell c7 = new PdfPCell(); parr[12]= new Paragraph("Ship To",font2); parr[13]= new Paragraph("Rua Co

16、nsiglieri Pedroso, 123",font2); parr[14] = new Paragraph("(Iberfar)",font2); parr[15]= new Paragraph("Edificio H",font2); c7.addElement(new Paragraph(" ")); for(int i=12;i<16;i++) c7.addElement(parr[i]); c7.setBorder(0); t.addCell(c7); //元素8 PdfPCell c8 = new PdfPCell();

17、 PdfPTable tt = new PdfPTable(2);//向表格单项中镶嵌表格 tt.getDefaultCell().setBorder(0); tt.addCell(" ");tt.addCell(" "); tt.addCell(" ");tt.addCell(" "); Paragraph []pars=new Paragraph[10]; PdfPCell []cells = new PdfPCell[10]; pars[0]= new Paragraph("Invoice Date :",font2); pars

18、[1]=new Paragraph("09/03/2015",font2); pars[2]=new Paragraph("Terms :",font2); pars[3]=new Paragraph("Due on Receipt",font2); pars[4]=new Paragraph("Due Date :",font2); pars[5]=new Paragraph("09/03/2015",font2); pars[6]=new Paragraph("P.O.# :",font2); pars[7]=new Paragraph("EU V

19、AT - PT507441338",font2); pars[8]=new Paragraph("EU VAT No. :",font2); pars[9]=new Paragraph("PT 507441338",font2); for(int i=0;i<10;i++){ pars[i].setAlignment(2);//设置该段落为靠右显示 cells[i]=new PdfPCell(); cells[i].setBorder(0); //cell必须有,再addElement添加才能设置对齐方式 //cell1.set

20、Phrase(para);是错的 cells[i].addElement(pars[i]); tt.addCell(cells[i]); } tt.setWidthPercentage(100);//百分比 c8.addElement(tt); c8.setVerticalAlignment(Element.ALIGN_RIGHT); c8.setRowspan(2); //向下合并单元格 c8.setBorder(0); t.addCell(c8); //元素9 PdfPCell c9 = new PdfPCell()

21、 Paragraph par17 = new Paragraph("Queluz de Baixo",font2); Paragraph par18 = new Paragraph("2730-501 Barcarena",font2); Paragraph par19 = new Paragraph("Portugal",font2); c9.addElement(new Paragraph(" ")); c9.addElement(par17); c9.addElement(par18); c9.addElement(par19); c9.

22、setBorder(0); t.addCell(c9); //第二张大表 PdfPTable t2 = new PdfPTable(5);//创建表格 int width[] = {8,47,10,10,25};//设置每列宽度比例 t2.setWidths(width); t2.setWidthPercentage(100);//百分比 t2.getDefaultCell().setMinimumHeight(25); t2.getDefaultCell().setBorder(0); //设置默认最低高度(再加入空格行时

23、候可以直接用);t2.addCell(" ");显示为默认高度 //向第二张大表中加入元素 Font font4=FontFactory.getFont(FontFactory.COURIER,8, Font.BOLD,BaseColor.WHITE); PdfPCell [][]ccs1 = new PdfPCell[5][5]; Paragraph [][]ppars1 = new Paragraph[5][5]; ppars1[0][0]=new Paragraph("#",font4); ppars1[0][1]=new Paragra

24、ph("Item & Description",font4); ppars1[0][2]= new Paragraph("Qty",font4); ppars1[0][3]=new Paragraph("Rate",font4); ppars1[0][4]=new Paragraph("Amount",font4); ppars1[1][0]=new Paragraph("1",font2); ppars1[1][1]=new Paragraph("U20-A202",font2); ppars1[1][2]= new Paragraph("1,00",fo

25、nt2); ppars1[1][3]= new Paragraph("140,00",font2); ppars1[1][4]=new Paragraph("140,00",font2); ppars1[2][0]=new Paragraph("2",font2); ppars1[2][1]=new Paragraph("2GSM",font2); ppars1[2][2]=new Paragraph("1,00",font2); ppars1[2][3]=new Paragraph("117,00",font2); ppars1[2][4]=new

26、Paragraph("117,00",font2); ppars1[3][0]=new Paragraph("3",font2); ppars1[3][1]= new Paragraph("Coofone D60",font2); ppars1[3][2]= new Paragraph("5,00",font2); ppars1[3][3]= new Paragraph("46,80",font2); ppars1[3][4]= new Paragraph("234,00",font2); ppars1[4][0]= new Paragraph("4",fo

27、nt2); ppars1[4][1]= new Paragraph("Shipping",font2); ppars1[4][2]= new Paragraph("1,00",font2); ppars1[4][3]=new Paragraph("38,60",font2); ppars1[4][4]=new Paragraph("38,60",font2); for(int i=0;i<5;i++){ for(int j=0;j<5;j++){ ccs1[i][j]=new PdfPCell(); if(i==0){

28、 ccs1[i][j].setBackgroundColor(BaseColor.DARK_GRAY); } if(i==0){ ccs1[i][j].setBorder(0);//无边框 } else{ ccs1[i][j].setBorderColor(BaseColor.CYAN); ccs1[i][j].setBorder(Rectangle.BOTTOM);//设置只有下边框 NO_BORDER(无边框)、TOP上边框、 } if(j==0){ ccs1[i][j

29、].setMinimumHeight(25);// 设置行高(每一行的第一个设置就OK) ppars1[i][j].setAlignment(1);//居中显示 } else if(j==1){ ppars1[i][j].setAlignment(0); } else{ ppars1[i][j].setAlignment(2);//靠右显示 } ccs1[i][j].addElement(ppars1[i][j]); t2.addCell(ccs1[i][j]); } }

30、 PdfPCell [][]ccs2 = new PdfPCell[5][2]; Paragraph [][]ppars2 = new Paragraph[5][2]; ppars2[0][0]= new Paragraph("Sub Total",font2); ppars2[0][1]=new Paragraph("529,60",font2); ppars2[1][0]= new Paragraph("Zero Rate (0%)",font2); ppars2[1][1]=new Paragraph("0,00",font2); ppars2[

31、2][0]= new Paragraph("Total",font1); ppars2[2][1]=new Paragraph("€529,60",font1); ppars2[3][0]= new Paragraph("Payment Made",font2); ppars2[3][1]=new Paragraph("(-) 529,60",font2); ppars2[4][0]= new Paragraph("Balance Due",font1); ppars2[4][1]=new Paragraph("€0,00",font1); for(int

32、 i=0;i<5;i++){ t2.addCell(""); t2.addCell(""); for(int j=0;j<2;j++){ ccs2[i][j]=new PdfPCell(); if(j==0) ccs2[i][j].setColspan(2); //合并单元格(2列) ccs2[i][j].setBorder(0); //无边框 ppars2[i][j].setAlignment(2); //靠右显示 ccs2[i][j].addElement(ppars2[i]

33、[j]); t2.addCell(ccs2[i][j]); } } Paragraph parag =new Paragraph("", FontFactory.getFont( FontFactory.HELVETICA, 18, Font.BOLDITALIC, new CMYKColor(0, 255, 255, 17))); parag.add(t); parag.add(t2); document.add(parag); document.newPage();

34、 //生成新页 ColumnText.showTextAligned(writer.getDirectContent(), //设置页脚 Element.ALIGN_CENTER,new Paragraph(c),300,50,0); document.add(new Paragraph("Bank Details",font5)); document.add(new Paragraph("Bank of Scotland, 600, GORGIE ROAD, EDINBURGH, EH11 3XP.",font5)); document.a

35、dd(new Paragraph("BAN - GB57BOFS80226013044960",font5)); document.add(new Paragraph("Swift - BOFSGB2S",font5)); document.add(new Paragraph(" ")); document.add(new Paragraph(" ")); document.add(new Paragraph("Terms & Conditions",font3)); document.add(new Paragraph("Payment in advance of shipmen",font5)); document.close(); } }

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服