免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 3105 | 回复: 18
打印 上一主题 下一主题

[SCO UNIX] 请教:关于终端打印问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2003-02-14 16:39 |只看该作者 |倒序浏览
偶用C编写了一个程序,用于打印业务报表,实现如下:

printf("\x1b[5i";

printf("报表内容";
.
.
.
.
printf("\x1b[4i";

运行环境为:国光CJ320SI终端,OKI5330打印机.
问题:  该程序打印报表打到一半突然字体放大,出现乱码.换成实达或昌淋终端却
打印正常.
咨询国光厂商,说打印过程终端缓存溢出,也就是说国光终端缓存太小,只有2-3K.
需打开SCOUNIX的终端流量控制IXON,IXOFF.

小弟对xon,xoff不太了解,哪位同志能给小弟指教一二.
如何实现终端连续打印大数据量文本?

论坛徽章:
1
15-16赛季CBA联赛之北控
日期:2022-03-04 22:35:50
2 [报告]
发表于 2003-02-14 16:41 |只看该作者

请教:关于终端打印问题

看一下终端的手册。

论坛徽章:
0
3 [报告]
发表于 2003-02-14 20:42 |只看该作者

请教:关于终端打印问题

sooloo:
我也正在研究打印问题,希望能与你交流

论坛徽章:
0
4 [报告]
发表于 2003-02-15 14:10 |只看该作者

请教:关于终端打印问题

有个方法可以试试。
把终端的控制码写到一个文件中,可以是每种类型终端一个文件也可以放在一起比如:

伪码 控制字符串
@SPR ^[5i
...
@EPR ^[4i

在程序开始时定义好终端类型,先把打印内容生成一个文件,然后用个转换程序把伪码转成控制码再送到终端。比如:

temp_print(文件名,终端类型)

只要你定义的没问题就可以用同一程序在不同的终端上使用了。当然你也可以把它扩展到打印机上,这样就可以打出更多的效果了。

论坛徽章:
1
20周年集字徽章-20	
日期:2020-10-28 14:04:30
5 [报告]
发表于 2003-02-15 16:12 |只看该作者

请教:关于终端打印问题

这个问题楼主可以这样看看,有时候报表文档太长,引起串口拥塞,你可以试一下每打印1k字符延迟0.5秒钟.估计"终端流量控制IXON,IXOFF"也是终端内置的流控制.如果人为在程序中加入控制,应该是有效果的.

论坛徽章:
0
6 [报告]
发表于 2003-02-17 09:54 |只看该作者

请教:关于终端打印问题

回:suwk:
    这是一种好方法!邮政绿卡系统就是这样控制不同的终端类型的.我有各种
终端的直接透明打印控制码,我看了一下,国光,实达,昌林的控制码都一样.我的
问题是如何防止终端缓冲区溢出.
    以国光为例:终端把从主机上收到的数据暂时存入一个先入先出的缓冲区内,
然后再逐个处理,缓冲区的大小为1.5K.在数据较大的打印过程中,由于打印机速度较慢,使得数据滞留在终端缓冲区内,即使缓冲区再大,也有可能溢出.

回pguan:
你说的方法值得一试,可是:
(1)UNIX下C库函数不支持delay(),如何准确延迟时间?
(2)我在程序打印之前加了system("stty ixon ixoff</dev/ttyXX"打开终端流控制,好象没用,结果还是一样.

论坛徽章:
0
7 [报告]
发表于 2003-02-17 11:22 |只看该作者

请教:关于终端打印问题

回:study:一同学习,一同学习,多多交流.

-------------在线等待高手指教!---------------

论坛徽章:
1
20周年集字徽章-20	
日期:2020-10-28 14:04:30
8 [报告]
发表于 2003-02-17 17:31 |只看该作者

请教:关于终端打印问题

用select()可以实现,我去看看程序。肯定是可以的。南天的ofp就是这样做的。

论坛徽章:
1
20周年集字徽章-20	
日期:2020-10-28 14:04:30
9 [报告]
发表于 2003-02-17 17:34 |只看该作者

请教:关于终端打印问题

关于“端流量控制IXON,IXOFF”,我也不是太明白,希望有了解的朋友说说

论坛徽章:
0
10 [报告]
发表于 2003-02-18 08:26 |只看该作者

请教:关于终端打印问题

pguan:

select()如何实现?南天的ofp是啥东东?能否贴一段程序代码,大家一起探讨探讨?

------我都快急死啦!实在没办法,我只好一个一个问终端厂商了
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP