打印 NV 图像电调/POS



我对ESC POS命令很陌生。我已将图像上传到打印机内存。我能够打印打印机附带的实用程序所需的图像。我想从我的应用程序打印图像。我真的不知道如何使用 C# 打印它。我正在使用下面的代码进行打印,但它没有打印任何内容。你能指导我如何使用C#打印图像吗?

public void PrintImage()
{
const string FS = "u001C";
string command = FS + "p11";
WriteLine(command);
}
public void WriteLine(string text)
{
WriteToBuffer(text);
_writeByte(10);
System.Threading.Thread.Sleep(WriteLineSleepTimeMs);
}
private void _writeByte(byte valueToWrite)
{
byte[] tempArray = {valueToWrite};
_serialPort.Write(tempArray,0,1);
}

基本上,ESC/POS 使用 byte[] 而不是 string(Unicode( 进行打印。
实际上,WriteToBuffer(( 似乎发送了打印请求的字符串和命令,但如果这部分没有来源,则无法做出准确的答案。


您将要使用的命令是这个命令,它打印由"FS q"命令定义的 NV 映像。 这是所包含实用程序中已弃用(不推荐/过时?(模式,不应使用。

FS p [过时命令]:打印NV位图像 FS q [过时命令]:定义NV位图像

但是,如果您真的要使用"FS p"命令,发送到打印机的字节数据将是:

byte[] NVimageCmd = { 0x1c, 0x70, 0x01, 0x31 };

应指定的 NV 映像编号是数值 1 (0x01(,而不是字符"1"。


当前建议使用另一个命令,如下面的命令说明中所述。

【推荐功能】此功能
仅部分打印机型号支持,未来机型可能不支持。建议使用 NV 图形功能 ( GS ( L/GS 8 L: GS ( L ( L<功能 _x0035_1=">和 GS ( L<功能 _x0036_4=">– GS ( L<功能 _x0036_9=">( 因为它们提供以下附加功能:

使用以下命令打印使用提供的实用程序注册的 NV 映像。
KC1 和 KC2 是注册时指定的密钥代码。

GS ( L<功能 _x0036_9=">: 打印指定的 NV 图形数据。

顺便说一下,如果打印机和实用程序处于高级打印机驱动程序模式,请根据该模式的说明发送控制字体。

相关内容

  • 没有找到相关文章

最新更新