c# - 打印 ESCPOS 图像 c#
问题描述
所以,我正在构建一个程序,通过服务发送的命令在 escpos 打印机中打印。我管理了所有内容,文本、对齐、字体大小等。现在我需要打印以八位字节流发送的图像我该怎么做?我什么都试过了
图像字符串是///////////wAAAAAAAAAAAAAAAAAAAAAAAA///////////wAAAAAAAAAAAAAAAAAAAAAAAA////////////////////////////////////////////////////////////////////////////////// /wAAAAAAAAAAAAAAAAAAAAAAAA//////////wAAAAAAAAAAAAAAAAAAAAAAAA///////////wAAAAAAAAAAAAAAAAAAAAAAAA////////////wAAAAAAAAAAAAAAAAAAAAAAAA///////// ///wAAAAAAAAAAAAAAAAAAAAAAAA//////////wAAAAAAAAAAAAAAAAAAAAAAAA////////////wAAAAAAAAAAAAAAAAAAAAAAAA///////////wAAAAAAAAAAAAAAAAAAAAAAAA///4AAAAAAAAAAAAAAAAAAAAA// /4AAAAAAAB//wAAAAAAAAAAAAAAAAAAA//4AAAAAAAAAAAAAAAAAAAAAAAAA//4AAAAAAAAAAAAAAAAAAAAAAAAA//4AAAAAAAAAAAAAAAAAAAAAAAAA//4AAAAAAAAAAAAAAAAAAAAAAAA//wAAAAAAAAAAAAAAAAAAAAA//4P/////B//wAAAAAAAAAAAAAAAAAAAAA//4P/////B//wAAAAAAAAAAAAAAAAAAAAA//4P /////B//wAAAAAAAAAAAAAAAAAAAAAAAA//4P/////B//wAH///8AAAAAAAAAAAAAAAAAA//4P/////B//wAH///8AAAAAAAAAAAAAAAAAA///////// B//wAH///8AAAAAAAAAAAAAAAAAA/////////B//wAH///8AAAAAAAAAAAAAAAAAA////////B//wAH///8AAAAAAAAAAAAAAAAAAA/////////B//wAH///8AAAAAAAAAAAAAAAAAA////////B//wAH8AAAAAAAAAAAAAAAAAAA//4AAH///B//wAH8AAAAAAAAAAAAAAAAAAAAA//4AAD///B// wAH8AAAAAGAAAAD/4AA///gA//4AAD///B//wAH8AAAAAHAAAAP/+AA///gA//4AAD///B//wAH8AAAAAAPAAAAf//AA///gA//4AAD///B// wAH8AAAAAPgAAA///gA///gA//4P////B//wAH8AAAAfgAAB/g/AAAfAAA//4P////B//wAH8AAAAfwAAD+AOAAAfAAA//4P/////B// wAH8AAAA/wAAD8AAAAfAAA//4P/////B//wAH//+AAA/4AAH4AAAAfAAA//4P/////B//wAH//+AAB/4AAHwAAAAfAAA//4AP////B//wAH //+AAB98AAPwAAAAafAAA//4AH////B//wAH//+AAD58AAPwAAAAafAAA//4AH////B//wAH//+AAD5+AAPwAAAAafAAA//4AH////B//wAH8AAAAHw+AAPgAAAAAAAfAAA/ /4AH////B//wAH8AAAAHw/AAPwAAAAAAfAAA//4AP////B//wAH8AAAAPgfAAPwAAAAafAAA//4P/////B//wAH8AAAAPgfAAPwAAAAAfAAA//4P/////B//wAH8AAAAf//gAH4AAAAafAAA //4P/////B//wAH8AAAAf//gAH4AAAAAAfAAA//4P/////B//wAH8AAAA///wAH8AAAAafAAA//4P/////B//wAH8AAAA///wAD+AOAAAfAAA/ /4P/////B//wAH8AAAB///4AB/w/AAAfAAA//4P/////B//wAH8AAAB8AD4AA///gAAfAAA//4P/////B//wAH8AAAD8AB8AAf//AAAfAAA//4P/////B//wAH8AAAD4AB8AAP/+AAAfAAA// 4P/////B//wAH4AAAAD4AA+AAD/4AAAfAAA////////B//wAAAAAAAAAAAAAAAAAAAAAAAA/////////B//wAAAAAAAAAAAAAAAAAAAAAA////////B //wAAAAAAAAAAAAAAAAAAAAAAAAA/////////B//wAAAAAAAAAAAAAAAAAAAAAAAAA//4AAAAAAAAAAAAAAAA//wAAAAAAAAAAAAAAAAAAAAAAAA//4AAAAAAAAAAAAAAAAAAAAAA//4AAAAAAAAAAAAAAAA//wAAAAAAAAAAAAAAAA//4AAAAAAAAAAAAA//wAAAAAAAAAAAAAAAAAA//4AAAAAAAAAA//wAAAAAAAAAAAAAAAAAAAAA///AAAAAAAAAAAAAAAAAAA/// ///////wAAAAAAAAAAAAAAAAAAAAAAAA//////////wAAAAAAAAAAAAAAAAAAAAAAAA///////////wAAAAAAAAAAAAAAAAAAAAAAAA///////////wAAAAAAAAAAAAAAAAAAAAA// /////////wAAAAAAAAAAAAAAAAAAAAAAAA///////////wAAAAAAAAAAAAAAAAAAAAAAAA///////////wAAAAAAAAAAAAAAAAAAAAAAAA///////////wAAAAAAAAAAAAAAAAAAAAA ///////////wAAAAAAAAAAAAAAAAAAAAAAAA////////////wAAAAAAAAAAAAAAAAAAAAAAAA///////////wAAAAAAAAAAAA啊啊啊啊啊
I was trying this
oby = new List<byte>();
oby.Add(Convert.ToByte(0x1B));
oby.Add(Convert.ToByte(0x2A));
oby.Add(Convert.ToByte(33));
Bytes = PrintExtensions.AddBytes(Bytes, oby.ToArray());
Bytes = PrintExtensions.AddBytes(Bytes, System.Text.Encoding.ASCII.GetBytes("////////////wAAAAAAAAAAAAAAAAAAAAAAA////////////wAAAAAAAAAAAAAAAAAAAAAAA////////////wAAAAAAAAAAAAAAAAAAAAAAA////////////wAAAAAAAAAAAAAAAAAAAAAAA////////////wAAAAAAAAAAAAAAAAAAAAAAA////////////wAAAAAAAAAAAAAAAAAAAAAAA////////////wAAAAAAAAAAAAAAAAAAAAAAA////////////wAAAAAAAAAAAAAAAAAAAAAAA////////////wAAAAAAAAAAAAAAAAAAAAAAA////////////wAAAAAAAAAAAAAAAAAAAAAAA////////////wAAAAAAAAAAAAAAAAAAAAAAA//4AAAAAAB//wAAAAAAAAAAAAAAAAAAAAAAA//4AAAAAAB//wAAAAAAAAAAAAAAAAAAAAAAA//4AAAAAAB//wAAAAAAAAAAAAAAAAAAAAAAA//4AAAAAAB//wAAAAAAAAAAAAAAAAAAAAAAA//4AAAAAAB//wAAAAAAAAAAAAAAAAAAAAAAA//4P/////B//wAAAAAAAAAAAAAAAAAAAAAAA//4P/////B//wAAAAAAAAAAAAAAAAAAAAAAA//4P/////B//wAAAAAAAAAAAAAAAAAAAAAAA//4P/////B//wAH///8AAAAAAAAAAAAAAAAA//4P/////B//wAH///8AAAAAAAAAAAAAAAAA/////////B//wAH///8AAAAAAAAAAAAAAAAA/////////B//wAH///8AAAAAAAAAAAAAAAAA/////////B//wAH///8AAAAAAAAAAAAAAAAA/////////B//wAH///8AAAAAAAAAAAAAAAAA/////////B//wAH8AAAAAAAAAAAAAAAAAAAA//4AAH///B//wAH8AAAAAAAAAAAEAAAAAAAA//4AAD///B//wAH8AAAAAGAAAAD/4AA///gA//4AAD///B//wAH8AAAAAHAAAAP/+AA///gA//4AAD///B//wAH8AAAAAPAAAAf//AA///gA//4AAD///B//wAH8AAAAAPgAAA///gA///gA//4P/////B//wAH8AAAAAfgAAB/g/AAAfAAA//4P/////B//wAH8AAAAAfwAAD+AOAAAfAAA//4P/////B//wAH8AAAAA/wAAD8AAAAAfAAA//4P/////B//wAH//+AAA/4AAH4AAAAAfAAA//4P/////B//wAH//+AAB/4AAHwAAAAAfAAA//4AP////B//wAH//+AAB98AAPwAAAAAfAAA//4AH////B//wAH//+AAD58AAPwAAAAAfAAA//4AH////B//wAH//+AAD5+AAPwAAAAAfAAA//4AH////B//wAH8AAAAHw+AAPgAAAAAfAAA//4AH////B//wAH8AAAAHw/AAPwAAAAAfAAA//4AP////B//wAH8AAAAPgfAAPwAAAAAfAAA//4P/////B//wAH8AAAAPgfAAPwAAAAAfAAA//4P/////B//wAH8AAAAf//gAH4AAAAAfAAA//4P/////B//wAH8AAAAf//gAH4AAAAAfAAA//4P/////B//wAH8AAAA///wAH8AAAAAfAAA//4P/////B//wAH8AAAA///wAD+AOAAAfAAA//4P/////B//wAH8AAAB///4AB/w/AAAfAAA//4P/////B//wAH8AAAB8AD4AA///gAAfAAA//4P/////B//wAH8AAAD8AB8AAf//AAAfAAA//4P/////B//wAH8AAAD4AB8AAP/+AAAfAAA//4P/////B//wAH4AAAD4AA+AAD/4AAAfAAA/////////B//wAAAAAAAAAAAAAAPAAAAAAAA/////////B//wAAAAAAAAAAAAAAAAAAAAAAA/////////B//wAAAAAAAAAAAAAAAAAAAAAAA/////////B//wAAAAAAAAAAAAAAAAAAAAAAA//4AAAAAAB//wAAAAAAAAAAAAAAAAAAAAAAA//4AAAAAAB//wAAAAAAAAAAAAAAAAAAAAAAA//4AAAAAAB//wAAAAAAAAAAAAAAAAAAAAAAA//4AAAAAAB//wAAAAAAAAAAAAAAAAAAAAAAA//4AAAAAAB//wAAAAAAAAAAAAAAAAAAAAAAA////////////wAAAAAAAAAAAAAAAAAAAAAAA////////////wAAAAAAAAAAAAAAAAAAAAAAA////////////wAAAAAAAAAAAAAAAAAAAAAAA////////////wAAAAAAAAAAAAAAAAAAAAAAA////////////wAAAAAAAAAAAAAAAAAAAAAAA////////////wAAAAAAAAAAAAAAAAAAAAAAA////////////wAAAAAAAAAAAAAAAAAAAAAAA////////////wAAAAAAAAAAAAAAAAAAAAAAA////////////wAAAAAAAAAAAAAAAAAAAAAAA////////////wAAAAAAAAAAAAAAAAAAAAAAA////////////wAAAAAAAAAAAAAAAAAAAAAAA"));
不起作用 :D 我尝试了更多,但我认为它不适合这个 textarea :D
解决方案
您必须在 2 字节oby.Add (Convert.ToByte (33));
和图像数据之间指定位图的宽度。
请参考以下内容。
对应的页面是日文的。
ESC键 *
ESC * m nL nH d1 ... dk
例如,假设变量 ImageWidth 包含宽度值,则变为如下。
oby.Add(Convert.ToByte(0x1B));
oby.Add(Convert.ToByte(0x2A));
oby.Add(Convert.ToByte(33));
oby.Add(Convert.ToByte(ImageWidth & 0xFF));
oby.Add(Convert.ToByte((ImageWidth & 0xFF00)>>8));
Bytes = PrintExtensions.AddBytes(Bytes, oby.ToArray());
推荐阅读
- bash - gsutil cp 管道在 docker 容器中作为 bash exec 命令失败
- email - 如何使用 DataHandler 和 FileDataSource 在 apache camel 中发送带有附件和文件大小验证的邮件
- php - 获取 wordpress 帖子的更新值
- deep-learning - 如何解决这个问题“RuntimeError: CUDA out of memory.”?
- javascript - 谷歌账号可以实现二维码跨平台登录吗?
- sql - 在 sql teradata 中连接
- html - 自定义上传文件的输入
- ios - 如何将 UIImage 转换为 .JPEG 格式并将其发送到服务器?
- php - 有人能告诉我为什么这个简单的 PHP 循环不起作用吗?
- blob - 使用 JS 从 UUID 获取本地 BLOB