You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
37 lines
1.2 KiB
37 lines
1.2 KiB
import { getLodop } from '@/utils/LodopFuncs'; |
|
/** |
|
* 根据传入的元素列表进行打印 |
|
* @param nodeList 元素节点列表 |
|
*/ |
|
const point = nodeList => { |
|
// 直接调用时使用默认节点列表 |
|
if (!nodeList) nodeList = document.querySelectorAll('.el-dialog__body>div>div>div'); |
|
|
|
// 初始化打印实例 |
|
let LODOP = getLodop(); |
|
|
|
// 当列表内没有元素时, 退出函数 |
|
if (nodeList.length === 0) return; |
|
|
|
LODOP.PRINT_INITA(1, 1, 900, 660, '测试预览功能'); |
|
LODOP.SET_PRINT_MODE('WINDOW_DEFPRINTER', 'Godex G500'); |
|
LODOP.SET_PRINT_STYLEA(0, 'TextNeatRow', true); //允许标点溢出,且英文单词拆开 |
|
// // 设置打印整宽且不变形 |
|
LODOP.SET_PRINT_MODE('PRINT_PAGE_PERCENT', 'Auto-Width'); |
|
// // 设置打印后自动关闭 |
|
LODOP.SET_PRINT_MODE('AUTO_CLOSE_PREWINDOW', 1); |
|
// 循环列表内元素并打印 |
|
nodeList.forEach(orderNode => { |
|
|
|
console.log(orderNode, 'orderNode'); |
|
|
|
let templateData = orderNode.innerHTML; |
|
// // data就是一段html文本 |
|
LODOP.ADD_PRINT_HTM('45', '0%', '100%', '100%', templateData); |
|
LODOP.NewPage() |
|
}); |
|
// LODOP.PREVIEW(); //预览(预览打印无脚标) |
|
LODOP.PRINT(); //直接打印 |
|
}; |
|
|
|
export default point;
|
|
|