当前位置:编程学习 > C#/ASP.NET >>

C# 汉字打印报错

--------------------编程问答-------------------- temp1是文件名 --------------------编程问答-------------------- 查看GETFONTHEX的参数说明 --------------------编程问答-------------------- temp1是个临时文件,要与后面的sBarCodeCMD = sb1.ToString() + "^XA^MD30^LH20,20^FO20,20^XGtemp1,1,1^FS^XZ";

中的temp1相对就 --------------------编程问答-------------------- --------------------编程问答-------------------- temp1 应该是GETFONTHEX这个函数产生的一个图片文件,你要先上传到zebra打印机的dram中
才可以用XG命令调用!

有兴趣可以看看我写的一个E-LABEL完美支持zebra打印的ZPLII语言。二次开发也很简单!
http://www.ync-tech.com

--------------------编程问答-------------------- 但是temp1怎么生成呢,我需要些代码,谢谢 --------------------编程问答-------------------- GETFONTHEX --------------------编程问答--------------------
引用 7 楼 wuyq11 的回复:
GETFONTHEX

有没有针对斑马的,谢谢 --------------------编程问答-------------------- GETFONTHEX他是只产生一个单色的图片,跟用什么打印机没有关系。
也就是你程序用GETFONTHEX函数产生一张图片,你把图片上传到打印的dram中,
然后在用指令来调用图片。
--------------------编程问答-------------------- --------------------编程问答-------------------- http://topic.csdn.net/u/20100329/17/a7abd929-e04f-4639-80e9-9b82865c3369.html --------------------编程问答-------------------- 不好意思搞错了

GETFONTHEX("测试","宋体","temp1",0,30,20,0,0,sb1);
这个函数产生的是图片指令,内容放到sb1中,
这个temp1是在图片指令中的图片名称

你可以下个断点看看sb1的内容就明白了

--------------------编程问答--------------------
引用 12 楼 dunao 的回复:
不好意思搞错了

GETFONTHEX("测试","宋体","temp1",0,30,20,0,0,sb1);
这个函数产生的是图片指令,内容放到sb1中,
这个temp1是在图片指令中的图片名称

你可以下个断点看看sb1的内容就明白了

temp1到底怎么建成的啊  --------------------编程问答--------------------
引用 13 楼 易做图8888 的回复:
引用 12 楼 dunao 的回复:
不好意思搞错了

GETFONTHEX("测试","宋体","temp1",0,30,20,0,0,sb1);
这个函数产生的是图片指令,内容放到sb1中,
这个temp1是在图片指令中的图片名称

你可以下个断点看看sb1的内容就明白了

temp1到底怎么建成的啊


你可以下个断点看看sb1的内容就明白了

temp1是这个GETFONTHEX函数产生的,这个函数据功能是把汉字转成图片指令。

你下断点看sb1的内容了吗?
--------------------编程问答-------------------- temp1也就是GETFONTHEX产生图片指令中的名称,

"^XA^MD30^LH20,20^FO20,20^XGtemp1,1,1^FS^XZ";
这个就是调用打印指令打印图片的!

你最好先是看看ZPLII相关指令 --------------------编程问答--------------------
引用 15 楼 dunao 的回复:
temp1也就是GETFONTHEX产生图片指令中的名称,

"^XA^MD30^LH20,20^FO20,20^XGtemp1,1,1^FS^XZ";
这个就是调用打印指令打印图片的!

你最好先是看看ZPLII相关指令

这个地方它报错“int i1 =GETFONTHEX("测试", "宋体", "temp1", 0, 30, 20, 0, 0, sb1);”尝试读取或写入受保护的内存。这通常指示其他内存已损坏。 --------------------编程问答--------------------
引用 15 楼 dunao 的回复:
temp1也就是GETFONTHEX产生图片指令中的名称,

"^XA^MD30^LH20,20^FO20,20^XGtemp1,1,1^FS^XZ";
这个就是调用打印指令打印图片的!

你最好先是看看ZPLII相关指令

你可以留下你的联系方式吗?这个我有点不太懂,一直搞不出来,多谢啦。我的qq:1804366993 --------------------编程问答-------------------- GETFONTHEX据我所知就是用在斑马上的
给你一个我用过的测试程序:
public static extern int GETFONTHEX(
                 string outstr,
                 string fontname,
                 string outstrname,
                 int orient,
                 int height,
                 int width,
                 int bold,
                 int italic,
                 StringBuilder hexbuf);//这个是定义
引用如下:
 FileStream fsg = new FileStream(Application.StartupPath + "\\1.text", FileMode.Append, FileAccess.Write);
                        StreamWriter sw = new StreamWriter(fsg);
                        StringBuilder hexbuf = new StringBuilder(21 * 1024);
                        int count;
                        count = GETFONTHEX("测试简体中文", "宋体", "test01", 0, 5, 30, 0, 0, hexbuf);
                        if (count > 0)
                        {
                            sw.Write(hexbuf.ToString().Substring(0, count));
                            count = 0;
                        }
                        count = GETFONTHEX("测试繁体中文", "宋体", "test02", 0, 5, 30, 0, 0, hexbuf);
                        if (count > 0)
                        {
                            sw.Write(hexbuf.ToString().Substring(0, count));
                            count = 0;
                        }
                        sw.Close();
                        FileStream fsg2 = new FileStream(Application.StartupPath + "\\1.text", FileMode.Open, FileAccess.Read);
                        StreamReader srg2 = new StreamReader(fsg2);
                        graph = srg2.ReadToEnd() + "\r\n";
                        srg2.Close();
我在应用程序的根部目录下创建一个1.text文件,当然文件的后缀不重要,也可以是1.txt,然后用GETFONTHEX将汉字转换为打印机的代码test01和test02,保存到1.text文件文件中,保存的结果是:

当你要打印它是就使用ZPL语言
^XA^MD30^LH20,20^FO20,20^XGtest01,1,1^FS^XZ
^XA^MD30^LH20,100^FO20,20^XGtest02,1,1^FS^XZ
--------------------编程问答-------------------- 保存的结果我发不上去,报告说有非法字符!
--------------------编程问答-------------------- 学习。这是个实际工作当中的问题。值得学习 --------------------编程问答-------------------- 你更新一下GETFONTHEX这个函数用的dll看看呢!

引用 16 楼 易做图8888 的回复:
引用 15 楼 dunao 的回复:
temp1也就是GETFONTHEX产生图片指令中的名称,

"^XA^MD30^LH20,20^FO20,20^XGtemp1,1,1^FS^XZ";
这个就是调用打印指令打印图片的!

你最好先是看看ZPLII相关指令

这个地方它报错“int i1 =GETFONTHEX("测试", "宋体", "temp1", 0, 30, 20, 0……
--------------------编程问答-------------------- 我什么错也不报 但是打印机就是不动  而且 这个里面怎么设置是那个打印机呢 我是斑马的zm400  求解答 --------------------编程问答-------------------- 学习了,高手还是蛮多的 --------------------编程问答-------------------- --------------------编程问答-------------------- 求高手解答 打印机没反应   怎么设置打印机的名称呢
 private void button1_Click(object sender, EventArgs e)
        {
            //调用打印汉字,下面代码将会打印“测试”二个汉字
            string sBarCodeCMD = ""; //条码打印命令

            StringBuilder sb1 = new StringBuilder(2048);

            int i1;

            i1 =GETFONTHEX("1111111111","宋体","temp1",0,30,20,0,0,sb1);
            sBarCodeCMD = sb1.ToString() + "^XA^MD30^LH20,20^FO20,20^XGtemp1,1,1^FS^XZ";
                  } --------------------编程问答-------------------- 怎么让它打印出想对应的条码呢  求高手  --------------------编程问答-------------------- 学习了、高手真的太多了
补充:.NET技术 ,  C#
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,