ftl转pdf(中)
1.将生成的pdf直接在网页上面打开,不用其他软件辅助
在上一篇的基础上进行修改
//在网页上预览 try { ByteArrayOutputStream baos = FtlToPdf1.createPDF(request, "PrintingContract.ftl", map); System.out.println(baos); ModelAndView mav = new ModelAndView("contract/PreviewOfContract"); //这是跳转的位置 try { // 中文文件名支持 String encodedfileName = new String("合同预览".getBytes("GBK"), "ISO8859-1"); String encodedfileNewName =encodedfileName+".pdf"; //拼接陈pdf名称 mav.addObject("encodedfileNewName",encodedfileNewName); response.getOutputStream().write(baos.toByteArray()); } catch (UnsupportedEncodingException e) { } return topAndBottomService.getSimpleTopAndBottom(mav); //设置response文件头,并弹出下载框 // FtlToPdf1.renderPdf(response, baos.toByteArray(), "合同预览");
1.2展示页面
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>合同打印预览123</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"></meta> <meta name="renderer" content="webkit"></meta> </head> <body> <embed width="100%" height="100%" name="plugin" src="encodedfileNewName" type="application/pdf"/> </body> </html>
src="encodedfileNewName" 这里要对应