//==本JS是加载Lodop插件或Web打印服务CLodop/Lodop7的综合示例,可直接使用,建议理解后融入自己程序==var CreatedOKLodopObject, CLodopIsLocal, CLodopJsState;//==判断是否需要CLodop(那些不支持插件的浏览器):==
function needCLodop() {try {var ua = navigator.userAgent;if (ua.match(/Windows\sPhone/i)) return true;if (ua.match(/iPhone|iPod|iPad/i)) return true;if (ua.match(/Android/i)) return true;if (ua.match(/Edge\D?\d+/i)) return true;var verTrident = ua.match(/Trident\D?\d+/i);var verIE = ua.match(/MSIE\D?\d+/i);var verOPR = ua.match(/OPR\D?\d+/i);var verFF = ua.match(/Firefox\D?\d+/i);var x64 = ua.match(/x64/i);if ((!verTrident) && (!verIE) && (x64)) return true;else if (verFF) {verFF = verFF[0].match(/\d+/);if ((verFF[0] >= 41) || (x64)) return true;} else if (verOPR) {verOPR = verOPR[0].match(/\d+/);if (verOPR[0] >= 32) return true;} else if ((!verTrident) && (!verIE)) {var verChrome = ua.match(/Chrome\D?\d+/i);if (verChrome) {verChrome = verChrome[0].match(/\d+/);if (verChrome[0] >= 41) return true;}}return false;} catch (err) {return true;}
}//加载CLodop时用双端口(http是8000/18000,而https是8443/8444)以防其中某端口被占,
//主JS文件名“CLodopfuncs.js”是固定名称,其内容是动态的,与其链接的打印环境有关:
function loadCLodop() {if (CLodopJsState == "loading" || CLodopJsState == "complete") return;CLodopJsState = "loading";var head = document.head || document.getElementsByTagName("head")[0] || document.documentElement;var JS1 = document.createElement("script");var JS2 = document.createElement("script");if (window.location.protocol == 'https:') {JS1.src = "https://localhost.lodop.net:8443/CLodopfuncs.js";JS2.src = "https://localhost.lodop.net:8444/CLodopfuncs.js";} else {JS1.src = "http://localhost:8000/CLodopfuncs.js";JS2.src = "http://localhost:18000/CLodopfuncs.js";}JS1.onload = JS2.onload = function () { CLodopJsState = "complete"; }JS1.onerror = JS2.onerror = function (evt) { CLodopJsState = "complete"; }head.insertBefore(JS1, head.firstChild);head.insertBefore(JS2, head.firstChild);CLodopIsLocal = !!((JS1.src + JS2.src).match(/\/\/localho|\/\/127.0.0./i));
}if (needCLodop()) { loadCLodop(); }//开始加载//==获取LODOP对象主过程,判断是否安装、需否升级:==
export function getLodop(oOBJECT, oEMBED) {var strFontTag = "<br><font color='#FF00FF'>打印控件";var strLodopInstall = strFontTag + "未安装!点击这里<a href='install_lodop32.exe' target='_self'>执行安装</a>";var strLodopUpdate = strFontTag + "需要升级!点击这里<a href='install_lodop32.exe' target='_self'>执行升级</a>";var strLodop64Install = strFontTag + "未安装!点击这里<a href='install_lodop64.exe' target='_self'>执行安装</a>";var strLodop64Update = strFontTag + "需要升级!点击这里<a href='install_lodop64.exe' target='_self'>执行升级</a>";var strCLodopInstallA = "<br><font color='#FF00FF'>Web打印服务CLodop未安装启动,点击这里<a href='CLodop_Setup_for_Win32NT.exe' target='_self'>下载执行安装</a>";var strCLodopInstallB = "<br>(若此前已安装过,可<a href='CLodop.protocol:setup' target='_self'>点这里直接再次启动</a>)";var strCLodopUpdate = "<br><font color='#FF00FF'>Web打印服务CLodop需升级!点击这里<a href='CLodop_Setup_for_Win32NT.exe' target='_self'>执行升级</a>";var strLodop7FontTag = "<br><font color='#FF00FF'>Web打印服务Lodop7";var strLodop7HrefX86 = "点击这里<a href='Lodop7_Linux_X86_64.tar.gz' target='_self'>下载安装</a>(下载后解压,点击lodop文件开始执行)";var strLodop7HrefARM = "点击这里<a href='Lodop7_Linux_ARM64.tar.gz'  target='_self'>下载安装</a>(下载后解压,点击lodop文件开始执行)";var strLodop7Install_X86 = strLodop7FontTag + "未安装启动," + strLodop7HrefX86;var strLodop7Install_ARM = strLodop7FontTag + "未安装启动," + strLodop7HrefARM;var strLodop7Update_X86 = strLodop7FontTag + "需升级," + strLodop7HrefX86;var strLodop7Update_ARM = strLodop7FontTag + "需升级," + strLodop7HrefARM;var strInstallOK = ",成功后请刷新本页面或重启浏览器。</font>";var LODOP;try {var isWinIE = (/MSIE/i.test(navigator.userAgent)) || (/Trident/i.test(navigator.userAgent));var isWinIE64 = isWinIE && (/x64/i.test(navigator.userAgent));var isLinuxX86 = (/Linux/i.test(navigator.platform)) && (/x86/i.test(navigator.platform));var isLinuxARM = (/Linux/i.test(navigator.platform)) && (/aarch/i.test(navigator.platform));if (needCLodop() || isLinuxX86 || isLinuxARM) {try {LODOP = getCLodop();} catch (err) { }if (!LODOP && CLodopJsState !== "complete") {if (CLodopJsState == "loading") alert("网页还没下载完毕,请稍等一下再操作."); else alert("未曾加载Lodop主JS文件,请先调用loadCLodop过程.");return;}var strAlertMessage;if (!LODOP) {if (isLinuxX86) strAlertMessage = strLodop7Install_X86; elseif (isLinuxARM) strAlertMessage = strLodop7Install_ARM; elsestrAlertMessage = strCLodopInstallA + (CLodopIsLocal ? strCLodopInstallB : "");document.body.innerHTML = strAlertMessage + strInstallOK + document.body.innerHTML;return;} else {if (isLinuxX86 && LODOP.CVERSION < "7.0.4.3") strAlertMessage = strLodop7Update_X86; elseif (isLinuxARM && LODOP.CVERSION < "7.0.4.3") strAlertMessage = strLodop7Update_ARM; elseif (CLODOP.CVERSION < "4.1.6.1") strAlertMessage = strCLodopUpdate;if (strAlertMessage) document.body.innerHTML = strAlertMessage + strInstallOK + document.body.innerHTML;}} else { //==如果页面有Lodop插件就直接使用,否则新建:==if (oOBJECT || oEMBED) {if (isWinIE)LODOP = oOBJECT;elseLODOP = oEMBED;} else if (!CreatedOKLodopObject) {LODOP = document.createElement("object");LODOP.setAttribute("width", 0);LODOP.setAttribute("height", 0);LODOP.setAttribute("style", "position:absolute;left:0px;top:-100px;width:0px;height:0px;");if (isWinIE)LODOP.setAttribute("classid", "clsid:2105C259-1E0C-4534-8141-A753534CB4CA");elseLODOP.setAttribute("type", "application/x-print-lodop");document.documentElement.appendChild(LODOP);CreatedOKLodopObject = LODOP;} elseLODOP = CreatedOKLodopObject;//==Lodop插件未安装时提示下载地址:==if ((!LODOP) || (!LODOP.VERSION)) {document.body.innerHTML = (isWinIE64 ? strLodop64Install : strLodopInstall) + strInstallOK + document.body.innerHTML;return LODOP;}if (LODOP.VERSION < "6.2.2.6") {document.body.innerHTML = (isWinIE64 ? strLodop64Update : strLodopUpdate) + strInstallOK + document.body.innerHTML;}}//===如下空白位置适合调用统一功能(如注册语句、语言选择等):=======================//===============================================================================return LODOP;} catch (err) {alert("getLodop出错:" + err);}
}

ts  文件进入

// @ts-nocheck
import {getLodop} from '@/utils/LodopFuncs.js'

vue3项目ts文件引入LodopFuncs.js打印控件相关推荐

  1. lodop打印html包含图片,使用lodop.js打印控件打印table并分页等

    使用lodop.js打印控件打印table并分页等 import {getLodop} from '@/utils/LodopFuncs.js' //打印表格 export default{ // n ...

  2. lodop直接打印服务器的文件,常见问答 - Lodop打印控件官方网站

    由于C-Lodop云打印兼容Lodop控件传统语句,所以开发者要把自己的web系统由Lodop6.xx升级到新版本(6.2xx+云打印)还是比较容易的,升级主要步骤有三个: 第一.更新Lodopfun ...

  3. Qt项目UI文件中新添加的控件在代码中不识别的问题

    ui->XXXX 在UI界面中新添加了控件,但是在代码中怎么也不出现,或者划红线 我看不少人说备份删除文件再添加,或者关闭QT再打开... 其实只要右键项目清除构建,然后重新构建就可以了, 这有 ...

  4. 兼容所有浏览器的Web打印控件的设计方案

    兼容所有浏览器的Web打印控件的设计方案 设计方案的简单实现网址:http://www.lc-simple.com/PrintTest/ 第一章:Web打印控件的原理 Web打印控件的工作的原理如下: ...

  5. 发现了一个好用的WEB项目打印控件--四方打印

    PAZU 与WEB打印  PAZU 组件应用于基于WEB的开发  PAZU 提供以下三大类功能:             1.控制IE窗口的外观和行为 1.1 通过 JavaScript 隐藏IE的地 ...

  6. 项目中比较好用的web打印控件——Lodop

    项目中比较好用的web打印控件--Lodop 由于公司业务需求,需要控件打印控件,在网上看到了很多打印插件,觉得Lodop打印插件比较好用,下面介绍操作方法: 1.准备工作,下载控件及官方demo 下 ...

  7. PAZU 是4Fang 为配合“四方在线”软件于2004年开发的WEB打印控件,适用于各种WEB软件项目的打印。...

    PAZU 是4Fang 为配合"四方在线"软件于2004年开发的WEB打印控件,适用于各种WEB软件项目的打印. PAZU是客户端软件,使用于IE作为客户端的所有应用,与服务器端开 ...

  8. 在.net Core 使用PDF模板文件生成PDF文件,代替WEB打印控件!

    这几天找WEB打印控件,要么收费的,要么免费的只能在IE里用! 我只想简单的打个标签纸!百度2天,看到一老兄说可以用PDF,然后又开始百度..找到了一篇文章 http://www.jianshu.co ...

  9. lodoop打印控件详解

    [java] view plaincopy 注意:使用此打印控件需要引入(在我上传的Demo中都有): install_lodop32.exe install_lodop64.exe LodopFun ...

最新文章

  1. Schama —— Xml文档约束技术 学习笔记
  2. php动态数组的存储过程,PHP数组作为存储过程的输入
  3. 【JUC并发编程06】多线程锁 (公平锁和非公平锁,死锁,可重锁)
  4. Hive学习和配置Mysql
  5. 信息检索及DM必备知识总结:luncene
  6. API之子窗口创建 (转)
  7. linux c之把最简单的字符串数据追加写入文件
  8. 一、创建Assetbundle 在unity3d开发的游戏中,无论模型,音频,还是图片等,我们都做成Prefab,然后打包成Assetbundle,方便我们后面的使用,来达到资源的更新。
  9. 阿里最后一面,高并发下如何设计一个秒杀系统?
  10. multipart/form-data
  11. 数据结构——数组、单向链表、双向链表
  12. htons、inet_addr、
  13. python使用逐行读取,出现空行,清楚空行方法
  14. c语言 字符串比较 指定长度,strncmp函数——比较特定长度的字符串详解
  15. 吉林大学操作系统上机随笔《实验二》
  16. SIM7600CE GNSS应用指南
  17. Spring Admin 入门
  18. 【开源项目】电视盒子好用又强大的APP: TVRemoteIME
  19. 转化为五分制的c语言程序,用C语言把百分制转化为五分制
  20. winform进度条的实现

热门文章

  1. 分享:常用汉字的unicode 编码
  2. vs2010单文档对话框窗口界面设置
  3. java性能优化之字符串优化处理
  4. 如何root安卓手机_安卓手机如何一键提升手机性能?用黑阈
  5. 利用ESP32可以实现哪些有趣的功能?
  6. oracle客户端没有sqlldr命令,关于oracle的sqlldr或sqlplus命令没响应的问题
  7. 强大的Git客户端:Tower for Mac(7.1(291)
  8. 单点登录 cas 二次开发 服务端开发【系列一】
  9. 一个操作轻松截取长图,Win10上网截长图小技巧!
  10. 如何把pdf分割成一页一页?