最近做了一个项目,里面涉及了打印的问题,小编就拿出来给大家分享一下,现在jquery库里面的打印都是使用window.print()进行页面的打印还有一些不知名的插件,这些打印有很多的问题,同时也会加大开发的难度。鉴于需要动态传值和指定字段的打印位置,我最近在网上找到了一个现如今比较流行的打印插件lodop(中文名“劳道谱”),这个lodop相比于其他的打印插件有着一下优点。

(1)、支持打印类型丰富:图片,网页,文本,一维码,二维码,报表等等;

(2)、对浏览器兼容性好:对于主流浏览器如IE,firefox,chrome都支持(ie,chrome

亲测);

(3)、集成方式简单:只需要安装一下插件并且引入js就可以直接使用。

下面我就说一下这个插件的在java中的集成过程:

注意:首先的安装好这个插件,然后才可以进行下面操作(安装教程只需要点击对应的.exe文件,一直下一步就可以)

(1)、首先在lodop官网下载相关文件(js、css等):http://www.lodop.net/download.html。

(2)、在下载好的包里  除了html页面  其他的js、css等拷贝到项目的一个目录下、新建个lodop文件夹

(3)、在页面头部加入下面等信息、这里注意的是引入的文件地址

<script language="javascript" src="../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="../lodop/install_lodop32.exe"></embed>

</object>

注意:对应文件的地址一定要写对。

(4)、配置好了后直接在<script></script>写打印的相关代码。

// 创建打印对象

var LODOP=getLodop();

//初始化打印对象。参数是

LODOP.PRINT_INIT("打印任务名");

//然后多个ADD语句及SET语句 ,打印方法有很多,下面会介绍

LODOP.ADD_PRINT_TEXT(0,0,100,20,"文本内容一");

//最后一个打印(或预览、维护、设计)语句 ,如果要预览的话

//LODOP.PRINT();  //直接打印

LODOP.PREVIEW();  //打印预览

使用到这里就已经结束了,就是这么简单。

下面主要说一下满足各方面需求的打印方法

<script>

var LODOP;

LODOP.PRINT_INIT();//打印控件初始化

//设置默认打印机

LODOP.PRINT_MODE("WINDOW_DEFPRINTER",打印机名称或序号);

//设置默认打印机及纸张

LODOP.PRINT_MODE("WINDOW_DEFPRINTER:打印机名称或序号",纸张名称);

var strHtml=document.getElementById("fanh").innerHTML;

//打印HTML网页

LODOP.ADD_PRINT_HTM(intTop,intLeft,intWidth,intHeight,strHtml);

//打印表格,报表

LODOP.ADD_PRINT_TABLE(intTop,intLeft,intWidth,intHeight,strHtml);

//打印纯文本

LODOP.ADD_PRINT_TEXT(intTop,intLeft,intWidth,intHeight,strContent);

//打印图片

LODOP.ADD_PRINT_IMAGE(intTop,intLeft,intWidth,intHeight,img);

/*打印一维码或二维码

Width 条码的总宽度,计量单位px(1px=1/96英寸)

Height 条码的总高度(一维条码时包括文字高度)

BarCodeType 条码的类型(规制)名称

BarCodeValue 条码值

BarCodeType有26中,包括24种一维码和2种二维码

24种一维码:128A,128B,128C,128Auto,EAN8,EAN13,EAN128A,EAN128B,EAN128C,Code39,

39Extended,2_5interleaved,2_5industrial,2_5matrix,UPC_A,UPC_E0,UPC_E1,UPCsupp2,

UPCsupp5,Code93,93Extended,MSI,PostNet,Codabar

2种二维码:QRCode,PDF417

*/

LODOP.ADD_PRINT_BARCODE(Top,Left,Width,Height,BarCodeType,BarCodeValue);

/*

设置打印方向及纸张大小

intOrient:打印方向,1:纵向(固定纸张),2:横向(固定纸张),3:纵向(固定宽度,高度自适应),0:方向不定

intPageWidth:纸张宽度

intPageHeight:纸张高度

strPageName:纸张类型名称,intPageWidth值为0才有效,如“A4”、“A5”等

*/

LODOP.PRINT_PAGESIZE(intOrient,intPageWidth,intPageHeight,strPageName);

//直接打印

LODOP.PRINT();

//打印预览

LODOP.PRVIEW();

//打印维护

LODOP.PRINT_SETUP();

</script>

Java集成流行的打印插件lodop相关推荐

  1. 强大的web打印插件--Lodop

    最近公司有个项目需要实现记录打印功能,在网上找到了一个很好的打印插件Lodop,它是一个专门针对web页面打印的控件,里面封装了很多的JS API,用户只要根据自己特定的需要调用里面相应的接口,就可以 ...

  2. extjs利用第三方打印插件lodop实现打印功能

    extjs由于是基于JS语言,其打印是可以按照一般的WEB打印方式来进行.笔者在网络上发现第三方打印插件Lodop(详见地址:http://mtsoftware.v053.gokao.net/inde ...

  3. jave使用打印插件(Lodop)可以打印以及保存excel

    引用 Lodop 插件实现打印以及另存excel 下面展示一些 内联代码片. // 给个jsp,引入插件js <%@ page language="java" content ...

  4. 打印插件LODOP使用介绍

    背景:目前很多项目中均设计到了打印模块,且都需要直接打印,目前公司已购入lodop打印插件,该插件能满足大部分打印相关的功能. 使用方法:http://www.lodop.net/demo.html ...

  5. UNI-APP集成蓝畅打印插件

    1. 将插件压缩包解压,拷贝到项目的 nativeplugins 目录下. 2. 在 HBuilder 中打开 mainfest.json,进入"App 原生插件配置",选择本地插 ...

  6. 转载:打印插件LODOP Vue中的使用

    官网:http://www.lodop.net/index.html 首先需要官网下载安装软件:进入官网后,在下载中心里面下载: 下载后的产品下载压缩包中文件如下图: 其中CLodop_Setup_f ...

  7. java lodop打印_[Java教程]LODOP打印插件

    [Java教程]LODOP打印插件 0 2016-03-15 10:00:06 HTML代码(请先下载对应LODOP插件安装)  -    打印onclike事件CreatePrintPage()打印 ...

  8. lodop打印html没有样式,关于JS Lodop打印插件打印Bootstrap样式错乱问题的解决方案...

    关于Lodop打印是个很牛逼的打印插件,但是打印Bootstrap的样式的时候很恶心 比如:页面是这样 打印之后的效果恶心的不要不要的 单独修改后的样式 出现这样的问题就是可能是bs把这个插件当做手机 ...

  9. 如何在vue项目中使用lodop打印插件

    如何在vue项目中使用lodop打印插件 - 简书 先写了个webdemo <%--Created by IntelliJ IDEA.User: AdministratorDate: 2018/ ...

最新文章

  1. Go处理百万每分钟的请求
  2. LCA(树上倍增 || rmqlca||)
  3. 旋转矩阵、欧拉角、四元数、轴/角之间的转换
  4. Linux删除整行命令
  5. Linux redhat目录下用户管理
  6. hdfs的副本数为啥增加了_HDFS详解之块大小和副本数
  7. 自己动手开发编译器(二)正则语言和正则表达式
  8. 数据结构题集c语言版答案严蔚敏第二章,数据结构习题集答案(C语言版严蔚敏)2(可编辑).doc...
  9. 2022软考软件设计师复习(上午题)
  10. win10系统如何设置win11开机音效的方法
  11. 竞价被恶意点击怎么办?该怎么屏蔽?
  12. IDO已经OUT ?3分钟了解NFT的新玩法INO
  13. 英语它在计算机旁边怎么读,计算机的英语怎么读?
  14. Linux笔记 No.17---(磁盘分区fdisk,gdisk,parted、格式化mkfs,mke2fs、挂载mount、卸载umount、df、du、lsof命令)
  15. 《我学区块链》—— 二、一些概念和工具
  16. 用Python助女神发朋友圈
  17. 考试系统(uniapp)第二节 (考试试题)
  18. freemodbus多从机支持
  19. python版本切换
  20. 橱柜门板生产下单解决方案

热门文章

  1. YAPI的安装和使用
  2. 数字证书认证机构(摘录自wiki百科)
  3. yxc_第二章 数据结构(二)_Trie树
  4. 算法复杂性分析及运算规则证明(一)
  5. win10 git bash 设置别名
  6. Coder, 知道 《编码》吗?
  7. 工作流模式的学习与总结
  8. 算法导论 — 4.4 用递归树方法求解递归式
  9. Elasticsearch:创建 Ingest pipeline
  10. 【《关于我一个小学生用C++写了个抽奖游戏这件事》】