58MM 网口热敏打印机打印维吾尔文乱码问题

问题描述

最近用C#写了一个程序,需要用网口类型的热敏打印机打印一段维吾尔文。但打印出来的都是乱码,哪位大侠可以帮上忙?

解决方案

解决方案二:
首先确定热敏打印机是否支持维文,其次你是用什么方式打印的,最好上代码
解决方案三:
privatevoidbutton1_Click(objectsender,EventArgse){Int32port=9100;stringbigFont=((char)27).ToString()+((char)33).ToString()+((char)213).ToString();//放大字体TcpClientclient=newTcpClient();try{client.Connect("192.168.1.230",port);Byte[]data=newbyte[]{0x1B,0x76};NetworkStreamstream=client.GetStream();stream.Write(data,0,data.Length);data=System.Text.Encoding.Default.GetBytes(bigFont);stream.Write(data,0,data.Length);data=System.Text.Encoding.Default.GetBytes("这里有一段维吾尔文/n");stream.Write(data,0,data.Length);data=System.Text.Encoding.Default.GetBytes("--/n");stream.Write(data,0,data.Length);data=System.Text.Encoding.Default.GetBytes("--/n");stream.Write(data,0,data.Length);stream.Close();}catch(Exceptionex){MessageBox.Show(ex.Message);}finally{client.Close();}}

解决方案四:
引用1楼yuankaiwsl的回复:

首先确定热敏打印机是否支持维文,其次你是用什么方式打印的,最好上代码

你看一下这个,说支持阿拉伯语,应该支持维吾尔文,我以前看过者类型打印机打印的维吾尔文。
解决方案五:
这里是维文吗?System.Text.Encoding.Default.GetBytes("--/n");

你试试改成System.Text.Encoding.GetEncoding(708).GetBytes("--/n");//阿拉伯字符(ASMO708)

或者System.Text.Encoding.GetEncoding(720).GetBytes("--/n");//阿拉伯字符(DOS)

试试
解决方案六:
引用4楼yuankaiwsl的回复:

这里是维文吗?System.Text.Encoding.Default.GetBytes("--/n");

你试试改成System.Text.Encoding.GetEncoding(708).GetBytes("--/n");//阿拉伯字符(ASMO708)

或者System.Text.Encoding.GetEncoding(720).GetBytes("--/n");//阿拉伯字符(DOS)

试试

还是不行,我现在有两个热敏打印机,一个是USB的,另一个是网口的,USB的是默认打印机,所以打印的时候不需要指定,但有两个USB打印机的话,怎么指定用哪个?
解决方案七:
1、打印出乱码,还是编码问题。2、两个USB打印机同时存在打印机名不会一样吧

时间: 2024-11-08 21:24:42

58MM 网口热敏打印机打印维吾尔文乱码问题的相关文章

Word插入公式后行距不等打印显示乱码怎么办

关于公式编辑器的使用在很多地方都有介绍,但在日常使用过程中,还有一些问题经常出现,比如说:输入数学公式后行距不等.不能更改公式的颜色.打印时经常出现乱码等.针对上面提到的各种问题,我们来看一下具体的解决办法. 一.解决插入公式后的行距不等问题 大家在Word文档中某一行使用公式编辑器输入数学公式后,发现行距明显变大,就好像公式把这一行和其它行给撑开了一样,使用改变行距的命令也不行.解决它有两种方法: 1.将点击要修改的数学公式,当光标变成"双箭头"时,通过拖动把它缩小.这种方法,适合于

Word中插入公式后的行距不等打印显示乱码的问题

关于公式编辑器的使用在很多书刊和杂志上都有介绍,但在日常使用过程中,还有一些问题经常出现,比如说:输入数学公式后行距不等.不能更改公式的颜色.打印时经常出现乱码等.针对上面提到的各种问题,我们来看一下具体的解决办法. 一.解决插入公式后的行距不等问题 大家在Word文档中某一行使用公式编辑器输入数学公式后,发现行距明显变大,就好像公式把这一行和其它行给撑开了一样,使用改变行距的命令也不行.解决它有两种方法: 1.将点击要修改的数学公式,当光标变成"双箭头"时,通过拖动把它缩小.这种方法

编程语言-TSC 用JNative解析dll打印中文乱码

问题描述 TSC 用JNative解析dll打印中文乱码 JNative sendcommand = new JNative("TSCLIB", "sendcommand"); sendcommand.setParameter(0,"BAR 300,300,1200,50"); sendcommand.invoke(); i = 0; JNative barfont = new JNative("TSCLIB", "

c#并口打印-C# 热敏打印机打印二维码

问题描述 C# 热敏打印机打印二维码 问题是这样,最近在用热敏打印机做东西,其中一向可能要涉及到热敏打印机打印二维码的问题: 并口打印(USB映射为并口): 当次打印二维码的的时候图片总有很多白线. 热敏打印机不放纸张的时候选择打印二维码提示完成后,再把纸张放进去,一次性来的码就没有(基本没有)白线. 当我打开并口一次性执行完再关闭并口的时候就不打印了,热敏打印机跟据接收指令一样. 请问该怎么解决. if (!SetLineSpace(0)) { return false; } if (!Ali

效果-C# 热敏打印机打印条形码

问题描述 C# 热敏打印机打印条形码 C# 热敏打印机打印条形码 打印条形码的函数是这样的int WINAPI GcPrintBarCode(int m,int n,char * string) 有谁知道吗?我一直测都打印不出来条形码那种效果 解决方案 热敏打印机也是打印机,其实完全可以将条形码保存为图片,然后直接打印.http://blog.csdn.net/chinacsharper/article/details/40109727http://blog.csdn.net/chinacsha

java-Android蓝牙打印机打印图片出现乱码!求解决!

问题描述 Android蓝牙打印机打印图片出现乱码!求解决! 打印代码如下: ByteArrayOutputStream baos = new ByteArrayOutputStream(); bitmap.compress(Bitmap.CompressFormat.PNG, 100, baos); byte[] buffer=baos.toByteArray(); outputStream.write(buffer); outputStream.flush(); outputStream.c

为什么我的结构体在文件中读出打印出现乱码?

问题描述 为什么我的结构体在文件中读出打印出现乱码? struct activity { int num; char content[1000]; char time[10]; char request[1000]; char creator[50]; char participants[1000][10]; int parti_num; //struct activity *next; }; int create_activity(char creator[])//创建新的活动 { FILE

Android 蓝牙连接 ESC/POS 热敏打印机打印实例(蓝牙连接篇)

公司的一个手机端的 CRM 项目最近要增加小票打印的功能,就是我们点外卖的时候经常会见到的那种小票.这里主要涉及到两大块的知识: 蓝牙连接及数据传输 ESC/POS 打印指令 蓝牙连接不用说了,太常见了,这篇主要介绍这部分的内容.但ESC/POS 打印指令是个什么鬼?简单说,我们常见的热敏小票打印机都支持这样一种指令,只要按照指令的格式向打印机发送指令,哪怕是不同型号品牌的打印机也会执行相同的动作.比如打印一行文本,换行,加粗等都有对应的指令,这部分内容放在下一篇介绍. 本篇主要基于官方文档,相

Android 蓝牙连接 ESC/POS 热敏打印机打印实例(ESC/POS指令篇)

上一篇 主要介绍了如何通过蓝牙连接到打印机.这一篇,我们就介绍如何向打印机发送打印指令,来打印字符和图片. 1. 构造输出流 首先要明确一点,就是蓝牙连接打印机这种场景下,手机是 Client 端,打印机是 Server 端. 在上一篇的最后,我们从 BluetoothSocket 得到了一个OutputStream.这里我们做一层包装,得到一个OutputStreamWriter 对象: OutputStreamWriter writer = new OutputStreamWriter(ou