本文共 3536 字,大约阅读时间需要 11 分钟。
java高级架构师全套vip教学视频,需要的加我qq1197852132
前面我利用httputil将jsp转化为html,之后转化为pdf,但我发现这样错误率比较高,且成功后有得图片没有完全形成。所以决定放弃这个方法。下面我将会介绍我的第二种方法,我会详细的将我的代码写出来,希望能够帮助到有需要的人。
第一步:
内容:制作jsp页面,我们利用的是拖拽的方法将需要的内容拖拽到一个图片上,之后保存拖拽的代码。
技术:jq拖拽。
代码:
证照管理 //在页面加载完之后加载jquery 如果下面加一个信息项,那么这里也要对应加一个 $().ready(function(e) { //拖拽复制体 $("#set1 div").draggable({ helper:"clone", cursor: "move" }); $("#set2 div").draggable({ helper:"clone", cursor: "move" });//释放后 对id及相关的属性进行设置 $('div[id^="r_set"]').droppable({ drop:function(event,ui){ var moveId =ui.helper.context.getAttribute('idd'); moveIdobj = document.getElementById(moveId); if (moveIdobj){ //自定义区域已存在 }else{ var source = ui.draggable.clone(); source.attr("id",moveId); $('', { src: '<%=request.getContextPath()%>/common/image/btn_delete.png', id: 'img', name:'img', click: function() { source.remove(); } }).appendTo(source); var top=ui.offset.top + 'px'; var left=ui.offset.left + 'px'; $(this).append(source); $('#'+moveId).css({"position":"absolute" , "top":top ,"left":left,"font-size":'40px',"color":'#3f3631',"font-family":'宋体',"line-height":'40px'}); $('#'+moveId).draggable({helper:"original"}); } } }); });
//这里是div拖拽区域,用于把拖拽的内容存储起来 //page-break-inside: avoid; 是为了多图片pdf分页信息项
![]()
第二步:
内容:制作标准的html页面,在页面中设置一个特殊的字符串,在程序的后台将特殊的字符串替换成保存的jsp代码,这样就得到标准的html页面
技术:将html页面获得并转化成字符串
代码:
Insert title here ###jspContent###
String Modelpath = htmlpath + "/el/elManage/temp/temp.html"; //模板文件地址 FileInputStream fileinputstream = new FileInputStream(Modelpath);//读取模块文件 int lenght = fileinputstream.available(); byte bytes[] = new byte[lenght]; fileinputstream.read(bytes); fileinputstream.close(); String templateContent = new String(bytes); //jspContent 存储得到数据库中的内容 templateContent=templateContent.replaceAll("###jspContent###",jspContent); //替换掉模块中相应的地方 //形成一个唯一的文件名 有可能大家没有UUID这个方法,大家随表取一个名字就可以。 String uid = UUID.getUID(); String fileame = uid +".html"; //生成的html文件保存路径 FileOutputStream fileoutputstream = new FileOutputStream(path + fileame);//建立文件输出流 byte tag_bytes[] = templateContent.getBytes("UTF-8"); fileoutputstream.write(tag_bytes); fileoutputstream.close();
这样我们就将jsp页面转化为html页面了,但大家一定要注意形成的html页面的位置和图片的位置,看是否能够显示图片,我相信大家知道我说的是什么意思。
我们将在第二篇文章讲解怎么将html页面转化为pdf或者image。希望这篇文章能够帮助大家,如有不明白的请留言。下面我提供一些架包和一些资料。
链接:http://pan.baidu.com/s/1nuAbRkP 密码:k0xj
转载地址:http://hipez.baihongyu.com/