[Qt项目实战]Qt实现美松标签打印机标签二维码打印(QR混排模式+页打印模式)

1、硬件信息、环境参数及配套资料

1.1 打印机信息及开发环境

  • 打印机 美松标签打印机
  • 串口/USB通讯
  • Qt5.9 64位程序

1.2 打印机配套开发资料

打印机主要配套测试工具、开发SDK及驱动等,均由厂家提供。

  • 开发Demo及动态库:MsPrintSDK-DLL-V2.2.2.5
    链接:https://pan.baidu.com/s/1gBbF4HOaDU45QQJGRbQANQ
    提取码:5hh9
  • 美松打印机测试工具
    链接:https://pan.baidu.com/s/15m_1WnVn72xaXCVC1pd0VQ
    提取码:kdgl
  • 美松打印机驱动
    链接:https://pan.baidu.com/s/1td5xEtABnDnzdj_cG3s3Gg
    提取码:nvpm
  • 美松打印机SDK中文手册
    链接:https://pan.baidu.com/s/1PF2p_GA0q4SHcESpK7FFKA
    提取码:xlgw

2、QR码混排打印模式

QR码混排打印,就是打印QR码,再打印字符文本,然后再设置是否环绕。其中QR码打印函数中可以设置二维码大小,距离左边距尺寸,以及设置是否环绕。
QR码函数.JPG

    SetBold(1);QByteArray string;//第一行预留10dot(1dot=0.125mm)PrintFeedDot(10);PrintQrcode("1123469-033",3,6,1);SetLeftmargin(160);QString ProductIDStr = "单号:1123469-033";string = ProductIDStr.toLocal8Bit();char *c_ProductIDStr = string.data();qDebug()<<"c_ProductIDStr"<<c_ProductIDStr;PrintString(c_ProductIDStr,0);QString length = "长度:2555";string = length.toLocal8Bit();char *c_length = string.data();PrintString(c_length,0);PrintString("上固定框",0);PrintString("型材编号:HNPC109-01",0);PrintString("型材名称:109外框",0);int r = PrintRemainQR();//清空设置SetClean();//设置距离左边距20dotSetLeftmargin(20);PrintString("A法式香槟色B氟碳灰色",0);PrintString("海南三亚旗舰店-陆涛",0);PrintString("静雅系列断桥-平框-系列窗纱一体平开窗(外开玻璃+内开纱窗)",0);//进纸到切纸位置PrintMarkpositioncut();

3、页打印模式

    //清理缓存,清除之前设置的参数SetClean();   //进入页模式,并设置页面大小,50mm宽,高25mmSetPagemode(1, 400, 200);//设置页模式数据打印起始位置坐标SetPagestartposition(80, 16);m_sbData = new StringBuilder("1123469-033");PrintString(m_sbData, 0);SetPagestartposition(320, 16);m_sbData = new StringBuilder("上固定框");PrintString(m_sbData, 0);SetPagestartposition(8, 40);StringBuilder bar_data = new StringBuilder("a20181226");Print1Dbar(2, 100, 1, 0, 10, bar_data);SetPagestartposition(340, 64);m_sbData = new StringBuilder("型材编号:HNPC109-01");PrintString(m_sbData, 0);SetPagestartposition(340, 100);m_sbData = new StringBuilder("型材名称:109外框");PrintString(m_sbData, 0);SetPagestartposition(56, 140);m_sbData = new StringBuilder("A法式香槟色B氟碳灰色");PrintString(m_sbData, 0);//设置页模式数据打印起始位置坐标SetPagestartposition(8, 170);m_sbData = new StringBuilder("海南三亚旗舰店-陆涛");PrintString(m_sbData, 0);PrintPagedata();////退出页模式SetPagemode(0, 400, 200);//黑标(不干胶)模式下检测黑标(不干胶缝隙)并进纸到切纸位置PrintMarkpositioncut();

4、总结

  • 如果使用USB接口,需要在电脑上安装美松打印机的驱动程序,否则会出现初始化失败的错误。

  • QR码混排打印时,最好是将QR码打印在左侧,因为打印QR码设置距离左边距最大值为27mm。

  • 美松打印机目前字体大小:字符是1224和917,汉字是1616和2424,放大只能按照倍数放大,比较难去调整到一个合适的字体大小,一般使用默认大小。

  • 美松提供的是纯C的动态库,输入的字符串是char类型,所以在Qt调用时需要将QString先转成char,并注意编码格式,否则会出现中文乱码情况。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/756971.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Android Studio实现内容丰富的安卓社交论坛平台

获取源码请点击文章末尾QQ名片联系&#xff0c;源码不免费&#xff0c;尊重创作&#xff0c;尊重劳动 项目编号085 1.开发环境android stuido jdk1.8 eclipse mysql tomcat 2.功能介绍 安卓端&#xff1a; 1.注册登录 2.查看公告 3.视频列表 4.资源列表 5.帖子列表 6.个人中心 …

Design Script之案例练习:曲线组合

让我们来探索一下如何创建分组曲线函数。这个函数将取一个无序曲线列表(必须是连续的),并将它们组合成分组的循环。 在这个例子中,我们将采取一系列的9个爆炸矩形,并洗牌合成曲线。这给了我们36条单独的曲线,它们可以正确地组合回各自的矩形中。 一些分散的曲线显示在右边…

基于python在线图书馆信息管理系统flask-django-nodejs-php

科学技术日新月异的如今&#xff0c;计算机在生活各个领域都占有重要的作用&#xff0c;尤其在信息管理方面&#xff0c;在这样的大背景下&#xff0c;学习计算机知识不仅仅是为了掌握一种技能&#xff0c;更重要的是能够让它真正地使用到实践中去&#xff0c;以创新的视角去不…

Spring-Mybatis字段映射

MybatisComfig.xml文件设置 <settings><setting name"mapUnderscoreToCamelCase" value"true"/> </settings> 完成全局配置将数据库下划线映射为驼峰式命名

nodejs基于vue班级管理系统的设计与实现-flask-django-python-php

根据现实需要&#xff0c;此系统我们设计出一下功能&#xff0c;主要有以下功能模板。 1.学生功能&#xff1a;首页、个人中心、课程信息管理、学生成绩管理、班级事件管理、班费支出管理、班级相册管理、班级音乐角管理。 2.管理员功能&#xff1a;首页、个人中心、班级管理、…

【征稿进行时|见刊、检索快速稳定】2024年区块链、物联网与复合材料与国际学术会议 (ICBITC 2024)

【征稿进行时|见刊、检索快速稳定】2024年区块链、物联网与复合材料与国际学术会议 (ICBITC 2024) 大会主题: (主题包括但不限于, 更多主题请咨询会务组苏老师) 区块链&#xff1a; 区块链技术和系统 分布式一致性算法和协议 块链性能 信息储存系统 区块链可扩展性 区块…

[Uni-app] 微信小程序的圆环进度条

效果图&#xff1a; 组件完整代码如下&#xff1a; <template><view class"base-style":style"position: relative;width: diameter px;height: diameter px;display: flex;flex-direction: row;background-color: bgColor ;"><!…

《动手学深度学习》 第3章 线性神经网络 部分笔记

文章目录 前言一、线性回归1.知识点&#xff08;1&#xff09;解析解&#xff08;2&#xff09;泛化&#xff08;3&#xff09;随机梯度下降&#xff08;4&#xff09;python列表推导&#xff08;5&#xff09;全连接层 二、线性回归的从零开始实现1.知识点&#xff08;1&#…

HCIP作业

实验要求&#xff1a; 1、R6为ISP&#xff0c;接口IP地址均为公有地址&#xff0c;该设备只能配置IP地址&#xff0c;之后不能再对其进行任何配置&#xff1b; 2、R1-R5为局域网&#xff0c;私有IP地址192.168.1.0/24&#xff0c;请合理分配&#xff1b; 3、R1、R2、R4&#x…

硬件基础:带缓启动MOS管电源开关电路

电源开关电路&#xff0c;经常用在各“功能模块”电路的电源通断控制&#xff0c;是常用电路之一。 本文要讲解的电源开关电路&#xff0c;是用MOS管实现的&#xff0c;且带缓开启功能&#xff0c;非常经典。 一、电路说明 电源开关电路&#xff0c;尤其是MOS管电源开关电路…

webpack中常见的Loader?解决了什么问题?

一、是什么 loader 用于对模块的"源代码"进行转换&#xff0c;在 import 或"加载"模块时预处理文件 webpack做的事情&#xff0c;仅仅是分析出各种模块的依赖关系&#xff0c;然后形成资源列表&#xff0c;最终打包生成到指定的文件中。如下图所示&#…

微信小程序 ---- 慕尚花坊 结算支付

结算支付 01. 配置分包并跳转到结算页面 思路分析&#xff1a; 随着项目功能的增加&#xff0c;项目体积也随着增大&#xff0c;从而影响小程序的加载速度&#xff0c;影响用户的体验。 因此我们需要将 结算支付 功能配置成一个分包&#xff0c; 当用户在访问设置页面时&a…

使用 Redux 管理 React 应用状态

使用 Redux 管理 React 应用状态 在复杂的 React 应用中&#xff0c;管理组件状态变得越来越复杂&#xff0c;这时候引入 Redux 可以帮助我们更好地管理状态。Redux 是一个可预测状态容器&#xff0c;它可以帮助我们统一管理应用的状态&#xff0c;使得状态变化更加可控。本文…

MATLAB环境下基于K-SVD的一维时间序列信号瞬态特征提取

当旋转机械某一零部件发生故障时&#xff0c;其振动信号中就会产生周期性循环冲击响应—瞬态成分&#xff0c;这些瞬态成分往往包含着重要的故障信息。因此&#xff0c;利用合适的方法对振动信号中因局部故障引起的瞬态冲击响应成分进行提取是一种较为有效的旋转机械零部件故障…

【RabbitMQ | 第四篇】基于RabbitMQ实现延迟队列

文章目录 4.基于RabbitMQ实现延迟队列4.1延迟队列定义4.2基于DLX&#xff08;死信交换机&#xff09;实现延迟队列4.2.1实现思路4.2.2主要流程4.2.3实战&#xff08;1&#xff09;创建两个消息队列&#xff1a;原始消息队列、死信队列 and 为原始消息队列关联私信交换机&#x…

【Ubuntu 22.04 LTS】安装vmware提示没有兼容的gcc

在ubuntu 22.04 上运行wmware时显示找不到兼容的gcc 这里要求的是12.3.0版本&#xff0c;我查看了自己的gcc版本是上面的11.4.0 在ask ubuntu上找到了解决方法 尝试了这一条 三条命令执行完成之后&#xff0c;再次运行vm&#xff0c;没有提示gcc的问题 点击install下载相应模…

vue3+element Plus form 作为子组件,从父组件如何赋值?

刚开始接触vue3时&#xff0c;碰到一个很low的问题&#xff0c;将form作为子组件&#xff0c;在页面中给form表单项输入内容&#xff0c;输入框不显示值&#xff0c;知道问题出在哪&#xff0c;但因为vue3组合式api不熟悉&#xff0c;不知从哪下手... 效果图&#xff1a; 父组…

【力扣TOP100】跳跃游戏ll

题目内容&#xff1a; 分析&#xff1a; 由于确保可以最终到达最后一个位置&#xff0c;所以可以只记录每一次跳跃可以到达的最远位置end&#xff0c;当end>len(nums)-1则结束循环。每次只需要在新可以跳到的位置上再次跳跃即可。 class Solution:def jump(self, nums: Li…

.htaccess全站设置SSL,wordpress全站设置SSL,网站重定向的次数过多”错误最佳解决方法教程

.htaccess全站设置SSL,wordpress全站设置SSL&#xff0c;网站重定向的次数过多”错误最佳解决方法教程 网上找了很多教程网无效**.htacces**设置&#xff0c;访问后台出现重定向次数过多&#xff0c;导致无法访问 找了好久&#xff0c;测试用AI机器人无法解决&#xff0c;参考…

机器学习 - 准备数据

“Data” in machine learning can be almost anything you can imagine. A table of big Excel spreadsheet, images, videos, audio files, text and more. 机器学习其实可以分为两部分 将不管是什么data&#xff0c;都转成numbers.挑选或者建立一个模型来学习这些numbers …