快递单批量打印之LODOP打印控件
Lodop打印控件批量打印的方式:
1.批量打印每页内容相同的:
(1)批量打印相同内容的很多纸张,可以设置打印份数,把该内容打印出多份。
2.批量打印每页不同内容的:
(1)通过在一个任务中分页,循环添加页数,每页添加不同内容,一个任务中打印多页。
(2)一个任务中一页,循环多个任务,每个任务添加不同内容。
(3)多任务与多页相结合,既分页又分任务,循环多任务,每个任务中循环多页。
使用建议:
1.批量打印同样的内容,可用多份,需要多少份打印多少份。
2.批量打印不同内容,页数很少,每页内容也很少,需要预览,可在一个任务中分多页。
3.批量打印不同内容,页数很少,不需要预览,直接打印,可一个任务分页,也可一页分多任务,均可。
4.批量打印大批量不同内容,内容多,页数很多,建议分页分任务,分组打印,提高打印性能。
打印过多页,不拆分任务,打印成百上千复杂页面,会导致需要等待一段时间,例如点语句后可能很久才出现预览界面。
打印上千上万个任务,任务太多,对操作系统负担大,可酌情分页,分页分任务进行折中处理。
简单来说,就是相同内容,可设份数。
不同内容,可多任务,可任务中分页,可多任务+分页进行组合分组。
批量多任务打印的时候,如果都是相同的模版,可以用同一个Lodop任务名,如果担心打印机队列里都是统一名称,无法区分,可用语句控制,为每个任务取不同的打印机队列名,方法可查看本博客的相关博文:LODOP循环多任务 同模版只设置不同队列任务名
Lodop打印语句最基本结构介绍(什么是一个任务)
Lodop中的一个任务,就是从PRINT_INIT(或PRINT_INITA)初始化到PRINT(或预览等),是一个任务。
方法:
设置打印份数:
LODOP.SET_PRINT_COPIES(4);//设置打印三份
LODOP.SET_PRINT_COPIES(document.getElementById('T6').value);//设置打印名为T6文本框里输入的值的份数。
设置一个任务分多页,没页内容不同:
初始化//任务开始
for (设置循环)
{
分页语句
根据循环添加不同打印项
}
打印(或预览)//任务结束
设置多个任务,循环多任务:
for (设置循环)
{
初始化//任务开始
根据循环添加不同打印项
打印(或预览)//任务结束
}
设置分页分任务,分组打印,
for (设置循环)
{
初始化//任务开始
for (设置循环)
{
分页语句
根据循环添加不同打印项
}
打印(或预览)//任务结束
}
例如,如下四个方法代码,实现打印四张:
第一个把相同的内容打印四份
第二个一个任务打印四页
第三个打印四个任务
第四个,打印两个任务,每个任务两页,共打印四页。
具体演示会代码:
当中的console.log是由于分2页为一个任务,打印两个任务,需要确定数组下标是0,1,2,3,所以加了个console.log查看一下循环中每次i+j的值是否是否正确。
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>WEB打印控件LODOP</title>
<script language="javascript" src="LodopFuncs.js"></script>
</head>
<body><input type="text" id="T6" size="2" value="4" name="copies">
<a href="javascript:prn1_preview()">预览打印多份一样的内容</a><br>
<a href="javascript:prn1_preview2()">预览打印多页</a><br>
<a href="javascript:prn1_preview3()">直接打印多任务</a><br>
<a href="javascript:prn1_preview4()">直接打印分页分任务 分组打印</a>
<script language="javascript" type="text/javascript"> var LODOP; //声明为全局变量 function prn1_preview() {//批量打印相同内容可以用份数LODOP=getLodop(); LODOP.PRINT_INIT("");LODOP.SET_PRINT_PAGESIZE(1,300,500,""); LODOP.SET_PRINT_COPIES(document.getElementById('T6').value);LODOP.ADD_PRINT_TEXT(75,6,100,20,"一个文本");//LODOP.PRINT_DESIGN();LODOP.PREVIEW(); };function prn1_preview2() { //一个任务中循环多页,每页内容不同LODOP=getLodop(); var wenben=["一号文本","二号文本","三号文本","四号文本"];LODOP.PRINT_INIT("");//初始化在循环外LODOP.SET_PRINT_PAGESIZE(1,300,500,"");for (i=0;i<wenben.length;i++){ LODOP.NewPage();LODOP.ADD_PRINT_TEXT(75,6,100,20,wenben[i]);}//LODOP.PRINT_DESIGN();LODOP.PREVIEW();};function prn1_preview3() { //循环多个任务,每个任务内容不同LODOP=getLodop(); var wenben=["一号文本","二号文本","三号文本","四号文本"];for (i=0;i<wenben.length;i++){ LODOP.PRINT_INIT("");//初始化在循环中LODOP.SET_PRINT_PAGESIZE(1,300,500,"");LODOP.ADD_PRINT_TEXT(75,6,100,20,wenben[i]); LODOP.PRINT(); }};function prn1_preview4() { //循环多个任务,任务中循环页数,分页分任务LODOP=getLodop(); var wenben=["一号文本","二号文本","三号文本","四号文本"];for (i=0;i<4;i=i+2){ LODOP.PRINT_INIT("");//初始化在外循环中LODOP.SET_PRINT_PAGESIZE(1,300,500,"");for (j=0;j<2;j++){ console.log(i+j);LODOP.ADD_PRINT_TEXT(75,6,100,20,wenben[i+j]);LODOP.NewPage(); } //LODOP.PRINT_DESIGN(); LODOP.PRINT(); }};
</script>
</body>
简单点描述,就是循环多页,在任务中循环页数;循环多任务,直接循环多任务。
数据和页数过多,需要分页分任务,分组打印,提高性能。
注意,批量打印建议用直接打印,如果用预览,lodop会弹出多次,c-lodop会提示窗口已打开。
快递单批量打印之LODOP打印控件相关推荐
- php批量打印快递单,excel怎么利用vba实现批量套打快递单批量打印单据?
excel vba 批量套打快递单,批量打印单据,可以自定义修改设置新的格式. 快递套打模板2015:点击下载 1.设置快递单的自定义纸张.选择对应打印机-点击打印服务器属性-勾选创建新表单-输入表单 ...
- 速卖通打印标签快递单条形码太细小导致打印出来的条形码挤在一起,扫描枪无法识别,如何打印出清晰的条形码
所有东西的原则都是慢工出细活的,打印机也一样,除非是价格昂贵的机器,一般普通的热敏打印机,高速打印是无法满足精度要求的,速卖通打印标签快递单条形码太小的话,即要求打印机要打出精度高的条形码.这时可以通 ...
- 指定打印机打印、条码 、小票打印 web端打印机控件 LODOP的使用
最近项目需要指定打印机进行前台后厨小票同时打印 1.首先安装LODOP插件点击下载 2 将LodopFuncs.js文件复制到自己项目 注意:vue项目需要底部添加 export { getLodop ...
- ImageGear for .NET扫描打印等图形图像处理控件介绍使用手册
ImageGear for .NET是一款图形图像处理控件,具有扫描,压缩,浏览.添加注释,打印,图像编辑,OCR以及PDF和矢量图像支持,使开发人员可以快速地开发出图像处理程序,可用于.NET Fr ...
- html图片打印不出来 lodop_lodop 控件实现web打印功能
WEB套打可选方案不多,理想的更少,利用免费控件Lodop+JavaScript实现精确套打,算是较为经典的选择.这种方案其实比较简单,利用一个htm文件就可以实现模板设计过程,几乎是"空手 ...
- c# winform 打印 窗体 及 窗体控件内容 的 初级尝试
学习c# winform 打印 参照了网络上诸多资源 效果示意: 操作步骤: 1.新建winform项目及创建窗体 2.拖取 打印 相关控件 PageSetupDialog . PrintDia ...
- 快速查询大量的顺丰快递单号物流,并分析派件延误
现在我们的生活离不开网购,这就使得快递与我们息息相关.那么,作为商家,该怎么才能批量查询顺丰快递的物流信息呢?下面随小编一起用快递批量查询高手来操作. 需要哪些工具? 安装一个快递批量查询高手(电脑端 ...
- 快递单号查询,筛选暂存件单号归类为已签收
查快递成为电商商家每天工作中的一部分,它们都是如何快速将每天发出的快递单号查询物流并分析的呢?下面用快递批量查询高手来试试,快速查询单号,筛选出暂存件,并归类为已签收. 先来看全部物流信息查询完成后, ...
- html bs架构调用客户端打印机用客户端及客户端局域网打印机打印,使用ScriptX.cab控件...
<html> <head> <style type="text/css" media="print"> DIV.d1 { D ...
最新文章
- 2021年大数据HBase(二):HBase集群安装操作
- Pytorch学习-torch.max()和min()深度解析
- 比较两个二维数组是否相等
- Django中models利用ORM对Mysql 进行查表的语句(多个语句)
- Kaggle Kernels和 Colab, Binder, Azure Notebooks, CoCalc, Datalore的比较
- Readiness 探测 - 每天5分钟玩转 Docker 容器技术(144)
- 单链表头插法和尾插法
- 在linux里如何建立一个快捷方式,连接到另一个目录
- python qq机器人 2019_QQ机器人开发
- Hibernate 的检索策略
- 《激活个体》读书笔记
- 非线性规划:实例与matlab应用
- 中南网络教育计算机基础在线作业二,《计算机应用基础》2(G)在线作业答案
- Kubernetes生产实践系列之二十三:Service Mesh之在Kubernetes部署Istio进行service mesh
- win10如何置顶某个窗口
- VoLTE常用12大知识点
- 数据安全--10--PDCA与数据安全治理
- 前端学习路线图--陆神版本思维导图
- C#连接嵌入式小型数据库firebird,操作数据
- 基于SpringBoot与LayUI的后台管理系统
热门文章
- 软件工程之软件测试之黑白盒测试
- Eclipse:出现The selection cannot be launched,and there are no recent launches的解决方法
- 烧心吃什么马上能缓解11 oracle,烧心喝什么马上能缓解
- Kafka:什么是kafka? ①
- Windows、Ubuntu远程登陆ubuntu服务器
- kali linux修改主机名,CentOS-7修改主机名
- 最简真分数 1199
- Java毕设项目在线招投标系统计算机(附源码+系统+数据库+LW)
- neovim常用命令
- 【IT项目管理】第8章 协调项目人力资源