我尝试将默认代码页更改为 PC858(多语言 + 欧元)以打印符号 €。
但是任何 ESC/POS 命令都有效。
所以我尝试发送命令的十六进制值:
public void EnvoiCommande(byte donnee)
{
byte[] array = {donnee};
_outStream.Write(array, 0, 1);
_outStream.Flush();
}
public void ImpressionTicket(List<string> donnee, string appareil, Texture2D logo)
{
// Code Page
EnvoiCommande(0x1b);
EnvoiCommande(0x74);
EnvoiCommande(0x13);
foreach (var txt in donnee)
{
var ligne = txt;
Encoding encoding = Console.OutputEncoding;
byte[] originalBytes = encoding.GetBytes(ligne);
byte[] outputBytes = Encoding.Convert(encoding,
Encoding.GetEncoding("CP00858"), originalBytes);
_outStream.Write(outputBytes, 0, outputBytes.Length);
Thread.Sleep(10);
}
}
我的所有文本都打印正确,但我的符号 € 不起作用。
在此先感谢您的帮助,我尝试了许多 PDF,并测试了许多类似的问题,但没有任何效果。