我试图找到一种将图像打印到斑马并且遇到很多麻烦的方法.
根据文件:
第一种编码称为B64,使用MIME Base64方案对数据进行编码.Base64用于对电子邮件缓存进行编码...
Base64对该字节进行6位编码,对未封闭数据的扩展为33%.
第二种编码称为Z64,首先使用LZ77算法压缩数据以减小其大小.(该算法由PKZIP使用,并且与PNG图形格式是一体的.)
然后使用如上所述的MIME Base64方案对压缩数据进行编码.
将根据Base64编码的数据计算CRC.
但它没有更多的信息.
基本上我正在尝试编码
private byte[] GetItemFromPath(string filepath)
{
using (MemoryStream ms = new MemoryStream())
{
using (Image img = Image.FromFile(filepath))
{
img.Save(ms, ImageFormat.Png);
return ms.ToArray();
}
}
}
Run Code Online (Sandbox Code Playgroud)
然后尝试使用以下内容进行打印:
var initialArray = GetItemFromPath("C:\\RED.png");
string converted = Convert.ToBase64String(b);
PrintThis(string.Format(@"~DYRED.PNG,P,P,{1},0,:B64:
{0}
^XA
^F0200,200^XGRED.PNG,1,1^FS
^XZ", converted .ToString(), initialArray.Length));
Run Code Online (Sandbox Code Playgroud)
根据它的声音,B64或Z64都被接受.
我尝试了一些变体,以及几种生成CRC和计算'大小'的方法.但似乎没有工作,并且图形下载到打印机总是被中止.
有没有人设法完成这样的事情?或者知道我哪里出错了?