java web 打印(lodop)案例
应需求接触到lodop 打印、
首先在lodop官网下载相关文件(js、css等):http://www.lodop.net/download.html
在下载好的包里 除了html页面 其他的js、css等拷贝到项目的一个目录下、新建个lodop文件夹。
在页面头部加入下面等信息、这里注意的是引入的文件地址
<script language="javascript" src="../res/lodop/LodopFuncs.js"></script>
<object id="LODOP_OB" classid="clsid:2105C259-1E0C-4534-8141-A753534CB4CA" width=0 height=0>
<embed id="LODOP_EM" type="application/x-print-lodop" width=0 height=0 pluginspage="../res/lodop/install_lodop32.exe"></embed>
</object>
打印有两种方式
第一种可以直接在js代码拼接打印信息
var LODOP=getLodop();
LODOP.PRINT_INIT("test套打");
LODOP.SET_PRINT_PAGESIZE(1,'200mm','152.4mm',''); //设置纸张高度 LODOP.ADD_PRINT_TEXT(10,250,157,20,'客户公司名称'); //这里的数字是调整相应位置
LODOP.ADD_PRINT_TEXT(432,149,157,20,'联系电话'); //LODOP.PRINT(); //直接打印
LODOP.PREVIEW(); //打印预览
第二种是 html代码写好打印信息,再到js 获取html内容 用lodop进行添加
var LODOP=getLodop();
LODOP.PRINT_INIT("test套打");
LODOP.ADD_PRINT_HTM(10,55,"100%","100%",document.getElementById("textarea01").value);
//LODOP.PRINT(); //直接打印
LODOP.PREVIEW(); //打印预览
<textarea rows="15" cols="80" style="display: none;" id="textarea01">
<table border="1" width="360" height="220" style="border-collapse:collapse;border:solid 1px" bordercolor="#000000">
<tr>
<td width="100%" height="240">
<p align="center">
<font face="隶书" size="5" style="letter-spacing: 10px">郭德强</font>
<p align="center"><font face="宋体" size="3">科学家</font></p>
<p align="left"><font face="宋体" size="3"> 地址:中国北京社会科学院附近东大街西胡同</font></p>
<p align="left"><font face="宋体" size="3"> 电话:010-88811888</font></p>
<p><br>
</p>
</td>
</tr>
</table>
</textarea>
下面附上测试页面的代码
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head> <script type="text/javascript" src="../res/vankewebstyle/js/jquery-1.9.0.js"></script>
<script language="javascript" src="../res/lodop/LodopFuncs.js"></script>
<object id="LODOP_OB" classid="clsid:2105C259-1E0C-4534-8141-A753534CB4CA" width=0 height=0>
<embed id="LODOP_EM" type="application/x-print-lodop" width=0 height=0 pluginspage="../res/lodop/install_lodop32.exe"></embed>
</object>
<script type="text/javascript">
$(function(){
$("#kkk").click(function(){
var LODOP=getLodop();
LODOP.PRINT_INIT("test套打");
LODOP.ADD_PRINT_HTM(10,55,"100%","100%",document.getElementById("textarea01").value);
/* LODOP.SET_PRINT_PAGESIZE(1,'200mm','152.4mm',''); //设置纸张高度 LODOP.ADD_PRINT_TEXT(10,250,157,20,'客户公司名称');
LODOP.ADD_PRINT_TEXT(432,149,157,20,'联系电话'); */ //LODOP.PRINT();
LODOP.PREVIEW();
})
})
</script>
<body>
<embed id="LODOP_EM" type="application/x-print-lodop" width=0 height=0 pluginspage="../res/lodop/install_lodop32.exe"></embed>
<textarea rows="15" cols="80" style="display: none;" id="textarea01">
<table border="1" width="360" height="220" style="border-collapse:collapse;border:solid 1px" bordercolor="#000000">
<tr>
<td width="100%" height="240">
<p align="center">
<font face="隶书" size="5" style="letter-spacing: 10px">郭德强</font>
<p align="center"><font face="宋体" size="3">科学家</font></p>
<p align="left"><font face="宋体" size="3"> 地址:中国北京社会科学院附近东大街西胡同</font></p>
<p align="left"><font face="宋体" size="3"> 电话:010-88811888</font></p>
<p><br>
</p>
</td>
</tr>
</table>
</textarea>
<input type="button" value="打印凭证" id="kkk"/>
</body>
</html>
更多相关配置设置等可查看官网:http://www.lodop.net/demo.html
在下测试、谷歌浏览器不支持 其它火狐、ie、360、QQ浏览器均可
补充:在谷歌或其它浏览器不能打印的情况下、找到了如下办法
用了window的print方法 在其它浏览(360、等)不能预览 ,而是直接弹出打印设置、只有谷歌弹出了打印预览的界面
$("#kp").click(function(){
dy1html=document.getElementById("textarea01").value; //获取打印内容
window.document.body.innerHTML=dy1html; //将获取的内容替换当前页
window.print(); //打印当前页
document.location.reload(); //重新加载页面
})
另外在百度时还搜索到
ireport、jqprint 插件
java web 打印(lodop)案例的更多相关文章
- JAVA WEB项目开发案例精粹
http://www.blogjava.net/zongbao/archive/2012/07/24/383884.htmlJAVA WEB项目开发案例精粹.pdf main Alt + / => ...
- Web打印--Lodop API
Lodop是一款专业的WEB打印控件,其设计目标是简单易用.功能足够强大,开创WEB打印开发的新局面. Lodop设计者对WEB下的打印开发任务进行了分类汇总,高度抽象,设计出仅用几个功能函数,就可实 ...
- IT兄弟连 Java Web教程 经典案例2
案例需求:写一个用户登录的html页面有账号和密码,并在登录的Servlet中获取登录的账号和密码,如果账号是abc密码是123则向浏览器输出登录成功,否则向浏览器输出登录失败. 案例实现: ● h ...
- Java Web 开发进阶案例之人事管理系统的完整实现
技术:Java+ jsp + servlet+ javabeans +sql+tomcat 概述 本系统的主要任务是实现人事管理系统的系统化和自动化管理, 主要包括招聘入 职.到期离职和员工调动信 ...
- java web 之 SpringMVC4.x配置
合肥程序员群:49313181. 合肥实名程序员群:128131462 (不愿透露姓名和信息者勿加入) Q Q:408365330 E-Mail:egojit@qq.com 综述: 有 ...
- 2013第39周一Web打印
2013第39周一Web打印 项目中遇到了Java Web打印问题,简单调用IE浏览器的打印不能完全满足要求,于是就搜集了Web打印相关的主题,简单汇总一下.web打印难点在分页.页面纸张设置,页眉页 ...
- Atitit.java swing打印功能 api attilax总结
Atitit.java swing打印功能 api attilax总结 1. 打印方式有三种:2 1.1. 一是不经过任何修改,直接调用javascript中的window.print()打印.2 ...
- AngularJs与Java Web服务器交互
AngularJs是Google工程师研发的产品,它的强大之处不是几句话就能描述的,只有真正使用过的人才能体会到,笔者准备在这篇文章中,以一个简单的登录校验的例子说明如何使用AngularJs和Web ...
- WEB打印控件LODOP的使用
有人说她是Web打印控件,因为她能打印.在浏览器中以插件的形式出现,用简单一行语句就把整个网页打印出来: 有人说她是打印编程接口,因为她介于浏览器和打印设备之间,是个通道和桥梁,几乎能想到的打印控制事 ...
随机推荐
- 在DHTML中把整个文档的各个元素作为对象处理的技术是:()
在DHTML中把整个文档的各个元素作为对象处理的技术是:() A.HTML B.CSS C.DOM D.Script(脚本语言) 解答:C DOM:文档对象模型
- 标准的 C++ 由三个重要部分组成
标准的 C++ 由三个重要部分组成: 核心语言,提供了所有构件块,包括变量.数据类型和常量,等等.C++ 标准库,提供了大量的函数,用于操作文件.字符串等.标准模板库(STL),提供了大量的方法,用于 ...
- (转)SDL 1.2 to 2.0 Migration Guide--SDL1.2更新到SDL2.0指南
SDL 1.2 to 2.0 Migration Guide 目录 SDL 1.2 to 2.0 Migration Guide Translations Introduction Overview ...
- QLayout布局时自动占满全部的空间。
QLayout子类布局时会自动占满全部的空间,和一般需要多大空间占多大空间的要求不符合,很烦人. 案例: 本来一个容器简单的放几个组件会剩余很大的空间,就那么剩余就好.
- 关于C++中using namespace std
原文链接:http://www.kuqin.com/language/20080107/3532.html <iostream>和<iostream.h>是不一样,前者没有后缀 ...
- 【Java面试题】32 ArrayList和Vector的区别
1. Vector & ArrayList 相同点: 1.ArrayList和Vector都是继承了相同的父类和实现了相同的接口 2.底层都是数组实现的 3.初始默认长度都为10. 不同点: ...
- uniqid,md5,microtime
<?php header("content-type:text/html;charset=utf-8"); $str = uniqid(md5(microtime(true) ...
- bootstrap 标签页tab切换js(含报错原因)
booststrap 标签页的tab切换,相信大家已经都很熟悉了,在boot官网示例以及其他网站已经很多罗列相关代码的了,这里就不赘述了.这里主要贴下让boot标签页默认显示哪个标签页的js. 主要留 ...
- jQuery对象的链式操作用法分析
可以使用下面的原则判断一个函数返回的时候是jQuery对象,即是否可以用于链式操作. 除了获取某些数据的函数,比如获取属性值"attr(name)",获取集合大小"siz ...
- apk 反编译工具的使用
在学习android 开发的时候,我们经常回尝试使用到别人的apk,希望能了解别人怎么编写的代码,于是想要一个能实现其反编译的软件,将软件反编译出来,查看其代码. 工具/原料 反编译软件dex2jar ...