java esc的_如何用Java中的Receipt打印机和ESC / POS命令提高速度
我有一个与Java和热敏打印机通信的应用程序
使用Star tsp 100打印机使热敏打印机以条形码/强调/不同尺寸打印收据等.
我可以让程序打印出我喜欢的东西,但打印机很慢.我相信原因是我使用非优选的方式/方法发送字节命令.
public static void Command(byte[] bytes) throws Exception{
//The bytes array is the argument, consisting of a byte[] array such as
//byte[] Emphasis = {0x1B, 0x45}; //Which gives the text boldness.
//And Command(Emphasis); To execute the command with this method.
DocPrintJob job = PrintServiceLookup.lookupDefaultPrintService().createPrintJob();
DocFlavor flavor = DocFlavor.BYTE_ARRAY.AUTOSENSE;
Doc doc = new SimpleDoc(bytes, flavor, null);
job.print(doc, null);
}
当我想打印一个字符串我使用这种方法.
public void PrintString(String s) throws Exception{
DocPrintJob job = PrintServiceLookup.lookupDefaultPrintService().createPrintJob();
System.out.println(job + "
DocFlavor flavor = DocFlavor.BYTE_ARRAY.AUTOSENSE;
byte[] b = s.getBytes("CP437");
Doc doc = new SimpleDoc(b, flavor, null);
job.print(doc, null);
}
因此,只要文本具有相同的样式,我就会使用此方法打印大量字符串(等等不需要其他命令).所以打印收据的代码看起来有点像这样.
PrintClass P = new PrintClass();
String Greating = "Hello";
P.Command(P.Emphasis);
P.Command(P.DoubleSize);
P.Command(P.Underline);
P.PrintString(Greating);
P.Command(P.CancelEmphasis);
P.Command(P.ResetSize);
P.Command(P.CancelUnderline);
String body = GenerateReceiptBody();
P.PrintString(body);
P.Command(P.Halfsize);
String footer = Constants.getFooter();
P.PrintString(footer);
P.Command(P.Cut);
收据按照我想要的方式打印,但这是一个非常缓慢的过程.
在发送POS / ESC命令时,我绝不是专家.然而,我觉得必须有一个更好/更快的方法来做到这一点,因为许多应用程序可以打印不同大小/条形码/样式/徽标的收据,而不需要花费10-20秒.
当收据打印机到达收据的主要部分或“正文”,其中所有东西都具有相同的尺寸/样式然后它很快就会进入,这让我相信这对我来说很慢的原因是因为我正在创建/执行如此多的个人“打印工作”.
那么有没有更快的方式将ESC / POS命令作为字节命令发送到Thermal打印机?在这种情况下,热敏打印机是Star tsp 100,但我不认为这对答案有任何影响.
任何答案都将非常感激.如果这是一个简单的问题,我很抱歉,因为我仍然在学习如何编码.
java esc的_如何用Java中的Receipt打印机和ESC / POS命令提高速度相关推荐
- java 网络爬虫_如何用Java实现网络爬虫
原标题:如何用Java实现网络爬虫 微信公众号"书圈"后台回复[Javapachong1],下载本例的PPT和源码 作品描述 本章作品是一个能够抓取指定网站ACM比赛信息的爬虫.A ...
- java 判断手机号_如何用java判断手机号运营商?
如何用java实现判断手机号的运营商?因为每个号段都是工信部规定划分给指定运营商的,所以我们可以通过手机号码的号段来判断. 现在手机号的号段那么多,要怎样方便的的判断呢?于是我们就想到了正则表达式,在 ...
- java html提取_如何用JAVA从HTML源代码中提取有用的文本信息?
如将连接中的流读取出来方法:/** * 将网页上的数据流转成字符串 * * @param url * @return * @throws IOError */ public String getSou ...
- python java 爬数据_如何用java爬虫爬取网页上的数据
当我们使用浏览器处理网页的时候,有时候是不需要浏览的,例如使用PhantomJS适用于无头浏览器,进行爬取网页数据操作.最近在进行java爬虫学习的小伙伴们有没有想过如何爬取js生成的网络页面吗?别急 ...
- java 字符串 加密_如何用JAVA实现字符串简单加密解密?
展开全部 java加密字符串可以使用des加密算法62616964757a686964616fe4b893e5b19e31333363376462,实例如下: package test; import ...
- java编写正则表达式_如何用Java编写最快的表达式评估器之一
java编写正则表达式 当然,标题有点吸引人,但确实如此(您当然不相信自己没有伪造自己的基准,但这是另一回事了). 因此,上周我正在寻找一个小型且可用的库来评估数学表达式. 我几乎直接偶然发现了这个s ...
- java用户输入_如何用Java获取用户输入?
您可以根据需求使用下列任意选项.import java.util.Scanner; Scanner scan = new Scanner(System.in);String s = scan.next ...
- java画五角星_如何用Java程序写出五角星?
展开全部 第一种,用图形 import java.awt.*; import javax.swing.*; public class WuJiaoXing extends JPanel { priva ...
- java 字符串加密_如何用JAVA实现字符串简单加密解密?
展开全部 java加密字符串可以使用des加密算法,实例如62616964757a686964616fe59b9ee7ad9431333337616636下: package test; import ...
最新文章
- 第 5 章 第二个 activity
- 实时监控Cat之旅~配置Cat集群需要注意的问题
- python转cython_Cython 0.23 发布 Python 的 C 语言扩展
- 安装docx模块出现Import Error: No module named 'exceptions'的解决方案
- HDU1010 Tempter of the Bone DFS+剪枝
- .NET Windows服务开发流程
- nekohtml资料
- 2021-04-02
- java小游戏程序的编写
- 世界杯直播背后看不见的战斗
- 多媒体技术计算机系统由组成,多媒体技术概述及多媒体计算机系统的组成
- 感恩节特辑丨这个世界有无限可能
- java jwt登录_图解JWT如何用于单点登录
- 免费美食网页设计成品
- Excel查找字符串下标(findsearch)
- OpenGL(可编程管线):Bezier曲面
- WWW 2022 | 量化交易相关论文(附论文链接)
- C语言中符号表示什么意思?举例说明
- 苹果新品发布会汇总:iphone13系列、ipad mini6,全新外观配色,加量减价
- 【vulnhub】Raven2