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

网站引导页面wordpress cpu突然

网站引导页面,wordpress cpu突然,毕业设计网页,浙江城乡住房建设厅网站一、实现效果 二、遇到的问题 实现导出PDF主体代码参考#xff1a;Java纯代码实现导出PDF功能#xff0c;下图是原作者实现的效果 导出报错Font STSong-Light with UniGB-UCS2-H is not recognized.。参考#xff1a;itext 生成 PDF(五) 使用外部字体 网上都是说jar包的版本…一、实现效果 二、遇到的问题 实现导出PDF主体代码参考Java纯代码实现导出PDF功能下图是原作者实现的效果 导出报错Font STSong-Light with UniGB-UCS2-H is not recognized.。参考itext 生成 PDF(五) 使用外部字体 网上都是说jar包的版本不对导致的字体兼容性问题。换了jar包版本发现没效果后来索性直接把字体下载到本地直接引入。 jar包发布到服务器上导出PDF的时候发生报错BOOT-INF/classes!/fonts/SimSun.ttf not exists。 可以看到字体文件在jar目录下面是有的但是发现classes后面多了个叹号。这是引入外部字体方式不对后改用问题2参考文章的第三种写法就没问题了。 添加水印参考itextpdf5.5.13给pdf添加图片水印、添加文字水印平铺、添加文字水印单个、添加页眉、页脚、页眉事件、添加图片 三、测试数据展示 list子节点数据 0 {BasBudgetDetailVo16046} BasBudgetDetailVo(budgetId2064535550, functionId231231232, budgetQuantity3, totalPrice2664.00, functionName功能1, functionDescription功能1描述, functionUnit套, functionPrice888.00, parentId231234512, functionSort1) 1 {BasBudgetDetailVo16047} BasBudgetDetailVo(budgetId2039369726, functionId231236478, budgetQuantity1, totalPrice888.00, functionName功能1, functionDescription功能1描述, functionUnit套, functionPrice888.00, parentId231234879, functionSort1) 2 {BasBudgetDetailVo16048} BasBudgetDetailVo(budgetId2039369725, functionId231236473, budgetQuantity1, totalPrice888.00, functionName功能2, functionDescription功能2描述, functionUnit套, functionPrice888.00, parentId231234879, functionSort2) 3 {BasBudgetDetailVo16049} BasBudgetDetailVo(budgetId2056146943, functionId231231241, budgetQuantity1, totalPrice888.00, functionName功能2, functionDescription功能2描述, functionUnit套, functionPrice888.00, parentId231234512, functionSort2) 4 {BasBudgetDetailVo16050} BasBudgetDetailVo(budgetId2047758334, functionId231236487, budgetQuantity1, totalPrice888.00, functionName功能3, functionDescription功能3描述, functionUnit套, functionPrice888.00, parentId231234512, functionSort3) 5 {BasBudgetDetailVo16051} BasBudgetDetailVo(budgetId2039369724, functionId231231245, budgetQuantity1, totalPrice888.00, functionName功能3, functionDescription功能3描述, functionUnit套, functionPrice888.00, parentId231234879, functionSort3) 6 {BasBudgetDetailVo16052} BasBudgetDetailVo(budgetId2047758333, functionId231231597, budgetQuantity1, totalPrice888.00, functionName功能4, functionDescription功能4描述, functionUnit套, functionPrice888.00, parentId231234512, functionSort4) 7 {BasBudgetDetailVo16053} BasBudgetDetailVo(budgetId2030981118, functionId231233154, budgetQuantity1, totalPrice888.00, functionName功能4, functionDescription功能4描述, functionUnit套, functionPrice888.00, parentId231234879, functionSort4) 8 {BasBudgetDetailVo16054} BasBudgetDetailVo(budgetId2030981117, functionId231234596, budgetQuantity1, totalPrice888.00, functionName功能5, functionDescription功能5描述, functionUnit套, functionPrice888.00, parentId231234879, functionSort5) 9 {BasBudgetDetailVo16055} BasBudgetDetailVo(budgetId2030981116, functionId231235487, budgetQuantity1, totalPrice888.00, functionName功能6, functionDescription功能6描述, functionUnit套, functionPrice888.00, parentId231234879, functionSort6)functionInfoList根节点数据 0 {BasFunctionInfo16090} BasFunctionInfo(functionId231234512, functionName模块1, functionDescription, functionUnit0, functionPrice0.00, createName管理员, createByadmin, createTimeWed Jan 24 16:56:35 CST 2024, updateName管理员, updateByadmin, updateTimeWed Jan 24 16:56:38 CST 2024, functionQuantitynull, functionSort1, parentIdnull) 1 {BasFunctionInfo16091} BasFunctionInfo(functionId231234879, functionName模块2, functionDescription, functionUnit0, functionPrice0.00, createName管理员, createByadmin, createTimeWed Jan 24 16:56:35 CST 2024, updateName管理员, updateByadmin, updateTimeWed Jan 24 16:56:38 CST 2024, functionQuantitynull, functionSort2, parentIdnull)matchList当前节点的子节点数据四、jar包引入 !--导出pdf所需包-- dependencygroupIdcom.itextpdf/groupIdartifactIditextpdf/artifactIdversion5.5.10/version /dependency dependencygroupIdcom.itextpdf/groupIdartifactIditext-asian/artifactIdversion5.2.0/version /dependency /dependencies五、外部字体引入 字体文件资源自己百度直接搜SimSun.ttf字体下载不难找 六、代码实现 private final ResourceLoader resourceLoader;public BasBudgetDetailServiceImpl(ResourceLoader resourceLoader) {this.resourceLoader resourceLoader; }/*** 导出pdf* * param response* throws Exception*/ Override public void downloadPdf(HttpServletResponse response) throws Exception {// 业务数据根据需求查询获取// 子节点数据ListBasBudgetDetailVo list;// 根子节点数据ListBasFunctionInfo functionInfoList;// 定义全局的字体静态变量Font content null;Resource resource resourceLoader.getResource(classpath:/fonts/SimSun.ttf);InputStream inputStream resource.getInputStream();BaseFont bfChinese null;try {// 字体bfChinese BaseFont.createFont(SimSun.ttf, BaseFont.IDENTITY_H, BaseFont.EMBEDDED, true, IOUtils.toByteArray(inputStream), null);content new Font(bfChinese, 10, Font.NORMAL);} catch (Exception e) {e.printStackTrace();}BaseFont bf null;Font font null;try {//创建字体bf BaseFont.createFont(SimSun.ttf, BaseFont.IDENTITY_H, BaseFont.EMBEDDED, true, IOUtils.toByteArray(inputStream), null);//使用字体并给出颜色font new Font(bf, 20, Font.BOLD, BaseColor.BLACK);} catch (Exception e) {e.printStackTrace();}Document document new Document(new RectangleReadOnly(842F, 595F));try {PdfWriter pdfWriter PdfWriter.getInstance(document, response.getOutputStream());//打开生成的pdf文件document.open();//设置标题Paragraph paragraph new Paragraph(这是标题文档标题, font);paragraph.setAlignment(1);//引用字体document.add(paragraph);// 总额BigDecimal detailTotal BigDecimal.valueOf(0);for (BasFunctionInfo functionInfo : functionInfoList) {// 匹配明细ListBasBudgetDetailVo matchList list.stream().filter(item -String.valueOf(item.getParentId()).equals(String.valueOf(functionInfo.getFunctionId()))).collect(Collectors.toList());// 设置表格的列宽和列数float[] widths {10f, 35f, 70f, 10f, 10f, 20f, 20f};PdfPTable table new PdfPTable(widths);table.setSpacingBefore(20f);// 设置表格宽度为100%table.setWidthPercentage(100.0F);table.setHeaderRows(1);table.getDefaultCell().setHorizontalAlignment(1);//列表-表头String[] titleList new String[]{序号, 功能名称, 功能描述, 数量, 单位, 单价元, 总价元};addTableTitle(table, content, titleList);// 模块总额BigDecimal modelTotal BigDecimal.valueOf(0);//列表数据if (matchList.size() 0) {Integer index 1;for (BasBudgetDetailVo item : matchList) {PdfPCell cell1 new PdfPCell(new Paragraph(String.valueOf(index), content));PdfPCell cell2 new PdfPCell(new Paragraph(item.getFunctionName(), content));PdfPCell cell3 new PdfPCell(new Paragraph(item.getFunctionDescription(), content));PdfPCell cell4 new PdfPCell(new Paragraph(String.valueOf(item.getBudgetQuantity()), content));PdfPCell cell5 new PdfPCell(new Paragraph(item.getFunctionUnit(), content));PdfPCell cell6 new PdfPCell(new Paragraph(String.valueOf(item.getFunctionPrice()), content));BigDecimal totalPrice item.getFunctionPrice().multiply(BigDecimal.valueOf(item.getBudgetQuantity()));PdfPCell cell7 new PdfPCell(new Paragraph(String.valueOf(totalPrice), content));//单元格对齐方式cell1.setFixedHeight(20);cell1.setHorizontalAlignment(Element.ALIGN_CENTER);cell1.setVerticalAlignment(Element.ALIGN_MIDDLE);// 文字长度大于15的时候设置表格行间距底边距离if (item.getFunctionName().length() 15) {cell2.setLeading(0f, 1.5f);cell2.setPaddingBottom(10);}cell2.setHorizontalAlignment(Element.ALIGN_CENTER);cell2.setVerticalAlignment(Element.ALIGN_MIDDLE);// 文字长度大于30的时候设置表格行间距底边距离if (item.getFunctionDescription().length() 30) {cell3.setLeading(0f, 1.5f);cell3.setPaddingBottom(10);}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);cell7.setHorizontalAlignment(Element.ALIGN_CENTER);cell7.setVerticalAlignment(Element.ALIGN_MIDDLE);table.addCell(cell1);table.addCell(cell2);table.addCell(cell3);table.addCell(cell4);table.addCell(cell5);table.addCell(cell6);table.addCell(cell7);// 序号index;modelTotal modelTotal.add(totalPrice);}// 合计行PdfPCell cell1 new PdfPCell(new Paragraph(合计, content));cell1.setFixedHeight(20);cell1.setHorizontalAlignment(Element.ALIGN_CENTER);cell1.setVerticalAlignment(Element.ALIGN_MIDDLE);// 空格PdfPCell cell2 new PdfPCell(new Paragraph(, content));cell2.setFixedHeight(20);cell2.setHorizontalAlignment(Element.ALIGN_CENTER);cell2.setVerticalAlignment(Element.ALIGN_MIDDLE);// 数额PdfPCell cell3 new PdfPCell(new Paragraph(String.valueOf(modelTotal), content));cell3.setFixedHeight(20);cell3.setHorizontalAlignment(Element.ALIGN_CENTER);cell3.setVerticalAlignment(Element.ALIGN_MIDDLE);table.addCell(cell1);table.addCell(cell2);table.addCell(cell2);table.addCell(cell2);table.addCell(cell2);table.addCell(cell2);table.addCell(cell3);detailTotal detailTotal.add(modelTotal);}document.add(new Paragraph(\n));document.add(new Paragraph(▋ functionInfo.getFunctionName(), content));document.add(table);document.add(new Paragraph(\n));if (matchList.size() 0) {document.add(new Paragraph(暂无数据, content));}}document.add(new Paragraph(\n));document.add(new Paragraph(总计 detailTotal 元, content));// 加水印PdfContentByte waterMar pdfWriter.getDirectContentUnder();String text 天天想辞职月月拿全勤;addTextFullWaterMark(waterMar, text, bfChinese);document.close();} catch (DocumentException e) {e.printStackTrace();log.error(导出pdf失败:{}, e);} }/*** 给表格添加表头** param table* param content* param titleList*/ public void addTableTitle(PdfPTable table, Font content, String[] titleList) {PdfPCell cell null;for (String title : titleList) {cell new PdfPCell(new Paragraph(title, content));cell.setVerticalAlignment(Element.ALIGN_MIDDLE);cell.setHorizontalAlignment(Element.ALIGN_CENTER);cell.setFixedHeight(20);cell.setNoWrap(false);table.addCell(cell);} }/*** 给pdf添加文字水印平铺** param waterMar* param text 水印文本* throws Exception*/ public static void addTextFullWaterMark(PdfContentByte waterMar, String text, BaseFont bf) {waterMar.beginText();PdfGState gs new PdfGState();// 设置填充字体不透明度为0.2fgs.setFillOpacity(0.2f);waterMar.setFontAndSize(bf, 20);// 设置透明度waterMar.setGState(gs);// 设置水印对齐方式 水印内容 X坐标 Y坐标 旋转角度for (int x 0; x 900; x 200) {for (int y -50; y 800; y 200) {waterMar.showTextAligned(Element.ALIGN_RIGHT, text, x, y, 35);}}// 设置水印颜色waterMar.setColorFill(BaseColor.GRAY);//结束设置waterMar.endText();waterMar.stroke(); }
http://www.w-s-a.com/news/773727/

相关文章:

  • 威海微网站建设乐清建网站哪家强
  • 网站和app的开发成本saas系统开发教程
  • ps切片工具做网站大气简洁网站
  • 网至普的营销型网站建设wordpress邮箱验证插件下载
  • 找权重高的网站方法张家港早晨网站建设
  • WordPress数据库添加管理员关键词优化举例
  • 河南国基建设集团--官方网站wordpress qode
  • 做农村电子商务的网站有哪些内容静态网站模板古典
  • 导航网站设计方案个人网站推广方法
  • 网站排名易下拉教程防wordpress花园
  • 计算机网站建设 是什么意思现在网站建站的主流语言是什么
  • php网站跟随导航西安百姓网免费发布信息网
  • 濮阳做公司网站html5 特效网站
  • ppt设计器怎么打开深圳seo网络推广营销
  • 建设银行网站用360浏览器建设信用卡中心网站
  • 创建公司网站 教程广州建设局
  • 详述网站建设的过程简答题ui培训设计怎么样
  • 动易网站官网ppt主题大全素材
  • 怎样用eclipse做网站可以做宣传图的网站
  • 哪里可以做游戏视频网站做网站平台应该注意哪些
  • 网站后期推广是谁来做网页制作步骤作答题
  • 全屋装修设计定制整装成都网站优化多少钱
  • html5购物网站模板一个网站两个数据库
  • 个人网站怎么做微信支付网站建设项目介绍
  • 建网站合同网站适配移动端和PC端
  • 网站建设培训机构哪里好html5开发wap网站
  • 免费自助建站源码学而思网校官网
  • 中国最大的网站制作公司青海省高等级公路建设管局网站
  • 建设网站对服务器有什么要求吗wordpress去除更新提示
  • 找个为公司做网站的手机端原神