当前位置: 首页 > news >正文

营销网站建设公司哪家好免费招聘网站哪个好

营销网站建设公司哪家好,免费招聘网站哪个好,网站建设dns解析设置,加入网络营销公司java导出pdf 在项目开发中#xff0c;产品的需求越来越奇葩啦#xff0c;开始文件下载都是下载为excel的#xff0c;做着做着需求竟然变了#xff0c;要求能导出pdf。导出pdf倒也不是特别大的问题关键就是麻烦。 导出pdf我知道的一共有3中方法#xff1a; 方法一#xff…java导出pdf 在项目开发中产品的需求越来越奇葩啦开始文件下载都是下载为excel的做着做着需求竟然变了要求能导出pdf。导出pdf倒也不是特别大的问题关键就是麻烦。 导出pdf我知道的一共有3中方法 方法一利用模板导出但是首先编辑模板的工具不好找现有的国外的工具要收费所以放弃了这个。 方法二利用HTML页面导出奈何自己不会写HTML前端忙没时间帮忙写。本着求人不如靠己的想法就选择了第三种比较麻烦的方法自己用table画。 方法三自己用纯代码画格式可调字体大小颜色对复杂没有规则的数据都可以 首先必须导入的依赖有 !--导出pdf所需包--dependencygroupIdcom.itextpdf/groupIdartifactIditextpdf/artifactIdversion5.5.10/version/dependencydependencygroupIdcom.itextpdf/groupIdartifactIditext-asian/artifactIdversion5.2.0/version/dependency然后就是一顿代码输出 先把效果贴上 然后是代码部分 ApiOperation(value 导出)PostMapping(/download)SneakyThrows(Exception.class)public void download(RequestBody Valid FumigationDTO fumigationDTO, HttpServletResponse response, HttpServletRequest request) {// 防止日志记录获取session异常request.getSession();// 设置编码格式response.setContentType(application/pdf;charsetUTF-8);response.setCharacterEncoding(utf-8);String fileName URLEncoder.encode(下载的PDF名称, UTF-8);response.setHeader(Content-disposition, attachment;filename*utf-8 fileName .pdf);fumigationService.download(fumigationDTO, response);}业务层 Overridepublic void download(FumigationDTO fumigationDTO, HttpServletResponse response) throws IOException {//要下载的数据查询数据部分我去掉了有需要自己根据业务取FumigationDowloadVO fumigationDowloadVO new FumigationDowloadVO();// 定义全局的字体静态变量Font titlefont;Font headfont;Font keyfont null;Font textfont null;Font content null;// 最大宽度try {// 不同字体这里定义为同一种字体包含不同字号、不同styleBaseFont bfChinese BaseFont.createFont(STSong-Light, UniGB-UCS2-H, BaseFont.NOT_EMBEDDED);titlefont new Font(bfChinese, 16, Font.BOLD);headfont new Font(bfChinese, 14, Font.BOLD);keyfont new Font(bfChinese, 10, Font.BOLD);textfont new Font(bfChinese, 15, Font.NORMAL);content new Font(bfChinese, 10, Font.NORMAL);} catch (Exception e) {e.printStackTrace();}BaseFont bf;Font font null;try {//创建字体bf BaseFont.createFont( STSong-Light, UniGB-UCS2-H,BaseFont.NOT_EMBEDDED);//使用字体并给出颜色font new Font(bf,20,Font.BOLD,BaseColor.BLACK);} catch (Exception e) {e.printStackTrace();}Document document new Document(new RectangleReadOnly(842F, 595F));try {PdfWriter.getInstance(document,response.getOutputStream());//打开生成的pdf文件document.open();//设置内容Paragraph paragraph new Paragraph(熏蒸备案回执,font);paragraph.setAlignment(1);//引用字体document.add(paragraph);// 设置表格的列宽和列数float[] widths {25f,25f,25f,25f,25f,25f};PdfPTable table new PdfPTable(widths);table.setSpacingBefore(20f);// 设置表格宽度为100%table.setWidthPercentage(100.0F);table.setHeaderRows(1);table.getDefaultCell().setHorizontalAlignment(1);PdfPCell cell null;//第一行cell new PdfPCell(new Paragraph(熏蒸备案编码,content));cell.setVerticalAlignment(Element.ALIGN_MIDDLE);cell.setHorizontalAlignment(Element.ALIGN_CENTER);cell.setFixedHeight(30);table.addCell(cell);cell new PdfPCell(new Paragraph(fumigationDowloadVO.getXzbm()));cell.setVerticalAlignment(Element.ALIGN_MIDDLE);cell.setHorizontalAlignment(Element.ALIGN_CENTER);table.addCell(cell);cell new PdfPCell(new Paragraph(熏蒸备案时间,content));cell.setVerticalAlignment(Element.ALIGN_MIDDLE);cell.setHorizontalAlignment(Element.ALIGN_CENTER);table.addCell(cell);cell new PdfPCell(new Paragraph(CheckVerifyUtil.dateToString4(fumigationDowloadVO.getSqxzrq())));cell.setVerticalAlignment(Element.ALIGN_MIDDLE);cell.setHorizontalAlignment(Element.ALIGN_CENTER);table.addCell(cell);cell new PdfPCell(new Paragraph(申请备案单位,content));cell.setVerticalAlignment(Element.ALIGN_MIDDLE);cell.setHorizontalAlignment(Element.ALIGN_CENTER);table.addCell(cell);cell new PdfPCell(new Paragraph(fumigationDowloadVO.getDwmc(),content));cell.setVerticalAlignment(Element.ALIGN_MIDDLE);cell.setHorizontalAlignment(Element.ALIGN_CENTER);table.addCell(cell);//第二行cell new PdfPCell(new Paragraph(熏蒸作业库点,content));cell.setVerticalAlignment(Element.ALIGN_MIDDLE);cell.setHorizontalAlignment(Element.ALIGN_CENTER);cell.setFixedHeight(30);table.addCell(cell);cell new PdfPCell(new Paragraph(fumigationDowloadVO.getKdmc(),content));cell.setVerticalAlignment(Element.ALIGN_MIDDLE);cell.setHorizontalAlignment(Element.ALIGN_CENTER);table.addCell(cell);cell new PdfPCell(new Paragraph(负责人,content));cell.setVerticalAlignment(Element.ALIGN_MIDDLE);cell.setHorizontalAlignment(Element.ALIGN_CENTER);table.addCell(cell);cell new PdfPCell(new Paragraph(fumigationDowloadVO.getFzr(),content));cell.setVerticalAlignment(Element.ALIGN_MIDDLE);cell.setHorizontalAlignment(Element.ALIGN_CENTER);table.addCell(cell);cell new PdfPCell(new Paragraph(联系电话,content));cell.setVerticalAlignment(Element.ALIGN_MIDDLE);cell.setHorizontalAlignment(Element.ALIGN_CENTER);table.addCell(cell);cell new PdfPCell(new Paragraph(fumigationDowloadVO.getFzrdh(),content));cell.setVerticalAlignment(Element.ALIGN_MIDDLE);cell.setHorizontalAlignment(Element.ALIGN_CENTER);table.addCell(cell);//第三行cell new PdfPCell(new Paragraph(单据状态,content));cell.setVerticalAlignment(Element.ALIGN_MIDDLE);cell.setHorizontalAlignment(Element.ALIGN_CENTER);cell.setFixedHeight(30);table.addCell(cell);cell new PdfPCell(new Paragraph(shzt(fumigationDowloadVO.getShzt()),content));cell.setVerticalAlignment(Element.ALIGN_MIDDLE);cell.setHorizontalAlignment(Element.ALIGN_CENTER);table.addCell(cell);cell new PdfPCell(new Paragraph(审核时间,content));cell.setVerticalAlignment(Element.ALIGN_MIDDLE);cell.setHorizontalAlignment(Element.ALIGN_CENTER);table.addCell(cell);cell new PdfPCell(new Paragraph(CheckVerifyUtil.dateToString5(fumigationDowloadVO.getShsj()),content));cell.setVerticalAlignment(Element.ALIGN_MIDDLE);cell.setHorizontalAlignment(Element.ALIGN_CENTER);table.addCell(cell);cell new PdfPCell(new Paragraph( ,content));cell.setVerticalAlignment(Element.ALIGN_MIDDLE);cell.setHorizontalAlignment(Element.ALIGN_CENTER);table.addCell(cell);cell new PdfPCell(new Paragraph( ,content));cell.setVerticalAlignment(Element.ALIGN_MIDDLE);cell.setHorizontalAlignment(Element.ALIGN_CENTER);table.addCell(cell);// 设置表格的列宽和列数float[] widths2 {25f,25f,25f,25f,25f,25f};PdfPTable table2 new PdfPTable(widths2);table2.setSpacingBefore(20f);// 设置表格宽度为100%table2.setWidthPercentage(100.0F);table2.setHeaderRows(1);table2.getDefaultCell().setHorizontalAlignment(1);//人员列表-第四行cell new PdfPCell(new Paragraph(姓名,content));cell.setVerticalAlignment(Element.ALIGN_MIDDLE);cell.setHorizontalAlignment(Element.ALIGN_CENTER);cell.setFixedHeight(20);table2.addCell(cell);cell new PdfPCell(new Paragraph(职务,content));cell.setVerticalAlignment(Element.ALIGN_MIDDLE);cell.setHorizontalAlignment(Element.ALIGN_CENTER);table2.addCell(cell);cell new PdfPCell(new Paragraph(职业资格,content));cell.setVerticalAlignment(Element.ALIGN_MIDDLE);cell.setHorizontalAlignment(Element.ALIGN_CENTER);table2.addCell(cell);cell new PdfPCell(new Paragraph(身体状况,content));cell.setVerticalAlignment(Element.ALIGN_MIDDLE);cell.setHorizontalAlignment(Element.ALIGN_CENTER);table2.addCell(cell);cell new PdfPCell(new Paragraph(熏蒸任务分工,content));cell.setVerticalAlignment(Element.ALIGN_MIDDLE);cell.setHorizontalAlignment(Element.ALIGN_CENTER);table2.addCell(cell);cell new PdfPCell(new Paragraph(是否外包,content));cell.setVerticalAlignment(Element.ALIGN_MIDDLE);cell.setHorizontalAlignment(Element.ALIGN_CENTER);table2.addCell(cell);//人员列表数据-第五行if(fumigationDowloadVO.getProples().size() 0){for (RecordFumigationPeople prople : fumigationDowloadVO.getProples()) {PdfPCell cell1 new PdfPCell(new Paragraph(prople.getXm(), content));PdfPCell cell2 new PdfPCell(new Paragraph(prople.getZw(), content));PdfPCell cell3 new PdfPCell(new Paragraph(prople.getZyzg(), content));PdfPCell cell4 new PdfPCell(new Paragraph(prople.getStzk(), content));PdfPCell cell5 new PdfPCell(new Paragraph(prople.getXzrwfg(), content));PdfPCell cell6 new PdfPCell(new Paragraph(prople.getSfwb(), content));//单元格对齐方式cell1.setHorizontalAlignment(Element.ALIGN_CENTER);cell1.setVerticalAlignment(Element.ALIGN_MIDDLE);cell1.setFixedHeight(20);//单元格垂直对齐方式cell2.setHorizontalAlignment(Element.ALIGN_CENTER);cell2.setVerticalAlignment(Element.ALIGN_MIDDLE);cell3.setHorizontalAlignment(Element.ALIGN_CENTER);cell3.setVerticalAlignment(Element.ALIGN_MIDDLE);cell4.setHorizontalAlignment(Element.ALIGN_CENTER);cell4.setVerticalAlignment(Element.ALIGN_MIDDLE);cell5.setHorizontalAlignment(Element.ALIGN_CENTER);cell5.setVerticalAlignment(Element.ALIGN_MIDDLE);cell6.setHorizontalAlignment(Element.ALIGN_CENTER);cell6.setVerticalAlignment(Element.ALIGN_MIDDLE);table2.addCell(cell1);table2.addCell(cell2);table2.addCell(cell3);table2.addCell(cell4);table2.addCell(cell5);table2.addCell(cell6);}}// 设置表格的列宽和列数float[] widths3 {25f,25f,25f,25f,25f};PdfPTable table3 new PdfPTable(widths3);table3.setSpacingBefore(20f);// 设置表格宽度为100%table3.setWidthPercentage(100.0F);table3.setHeaderRows(1);table3.getDefaultCell().setHorizontalAlignment(1);//实施储粮信息cell new PdfPCell(new Paragraph(仓房,content));cell.setVerticalAlignment(Element.ALIGN_MIDDLE);cell.setHorizontalAlignment(Element.ALIGN_CENTER);cell.setFixedHeight(20);table3.addCell(cell);cell new PdfPCell(new Paragraph(货位,content));cell.setVerticalAlignment(Element.ALIGN_MIDDLE);cell.setHorizontalAlignment(Element.ALIGN_CENTER);table3.addCell(cell);cell new PdfPCell(new Paragraph(粮食品种,content));cell.setVerticalAlignment(Element.ALIGN_MIDDLE);cell.setHorizontalAlignment(Element.ALIGN_CENTER);table3.addCell(cell);cell new PdfPCell(new Paragraph(计划熏蒸开始时间,content));cell.setVerticalAlignment(Element.ALIGN_MIDDLE);cell.setHorizontalAlignment(Element.ALIGN_CENTER);table3.addCell(cell);cell new PdfPCell(new Paragraph(计划熏蒸结束时间,content));cell.setVerticalAlignment(Element.ALIGN_MIDDLE);cell.setHorizontalAlignment(Element.ALIGN_CENTER);table3.addCell(cell);if(fumigationDowloadVO.getDtls().size() 0){for (RecordFumigationDtlVO dtl : fumigationDowloadVO.getDtls()) {PdfPCell cell1 new PdfPCell(new Paragraph(dtl.getCfmc(), content));PdfPCell cell2 new PdfPCell(new Paragraph(dtl.getHwmc(), content));PdfPCell cell3 new PdfPCell(new Paragraph(dtl.getLspzmc(), content));PdfPCell cell4 new PdfPCell(new Paragraph(CheckVerifyUtil.dateToString4(dtl.getJhxzksrq()), content));PdfPCell cell5 new PdfPCell(new Paragraph(CheckVerifyUtil.dateToString4(dtl.getJhxzjsrq()), content));//设置居中cell1.setHorizontalAlignment(Element.ALIGN_CENTER);cell1.setVerticalAlignment(Element.ALIGN_MIDDLE);cell1.setFixedHeight(20);cell2.setHorizontalAlignment(Element.ALIGN_CENTER);cell2.setVerticalAlignment(Element.ALIGN_MIDDLE);cell3.setHorizontalAlignment(Element.ALIGN_CENTER);cell3.setVerticalAlignment(Element.ALIGN_MIDDLE);cell4.setHorizontalAlignment(Element.ALIGN_CENTER);cell4.setVerticalAlignment(Element.ALIGN_MIDDLE);cell5.setHorizontalAlignment(Element.ALIGN_CENTER);cell5.setVerticalAlignment(Element.ALIGN_MIDDLE);table3.addCell(cell1);table3.addCell(cell2);table3.addCell(cell3);table3.addCell(cell4);table3.addCell(cell5);}}document.add(new Paragraph(\n));document.add(new Paragraph(▋ 基本信息,content));document.add(new Paragraph(\n));document.add(table);document.add(new Paragraph(\n));document.add(new Paragraph(▋ 基本信息,content));document.add(new Paragraph(\n));document.add(table2);document.add(new Paragraph(\n));document.add(new Paragraph(▋ 熏蒸作业储粮粮情,content));document.add(new Paragraph(\n));document.add(table3);//关闭文档document.close();} catch (DocumentException e) {e.printStackTrace();log.error(导出pdf失败:{},e);}}然后就可以了直接导出pdf。
http://www.zqtcl.cn/news/898757/

相关文章:

  • 大连网站建设价格低做校招的网站有哪些
  • 电脑端网站和手机网站区别做的好的营销型网站有哪些内容
  • 长沙市做网站网站建设 全是乱码
  • ps做网站原形系统学做网站
  • 接网站 建设wordpress 打开慢 google
  • wordpress 移动 建站网站前台如何做访问量显示
  • 公司做网站买域名之后做什么打鱼网站开发
  • 南京市城乡建设局网站二级建造师证件查询
  • 百度关键词优化系统网站优化师招聘
  • 网站方案建设书推广产品的软文怎么写
  • 网站栏目按扭邢台手机网站建设地方
  • 青浦赵巷网站建设做网站需要编程吗
  • 公司logo设计含义株洲seo
  • 公司制作网站做论坛网站怎么赚钱吗
  • 深圳 外贸 网站建设 龙医院网站建设价格
  • 网上建网站驰易网站建设
  • 建设工程招标专业网站网站联盟广告
  • 自建站英文公司网站制作银川
  • 顺德网站建设公司信息全网推广软件
  • 网站全屏视频怎么做电子商务网站规划的原则是什么
  • 网站建设行业发展史做网站主页上主要放哪些内容
  • 成都成华网站建设小程序开发网上商城
  • 企业网站建设的重要性和必要性深圳设计网站排行
  • 山西省网站建设河南省考生服务平台官网
  • 做水产的都用什么网站wordpress 前端登陆
  • 商务网站建设网站开发一个软件开发的流程
  • 网站建设电脑和手机有区别吗公众号登录微信入口
  • 天津市建设监理协会网站三亚网络网站建设
  • 义乌进货网平台北京网优化seo优化公司
  • 在网站上放广告网站建设流程效果