在没有字库的打印机上打印汉字。(200分)

  • 主题发起人 主题发起人 阿蛮
  • 开始时间 开始时间
真的没人能够解决吗?此打印机是爱普生TM88II,大家都买过xx风采彩票吧,就是那种机上的
打印机,没有汉字库,也是通过直接写并口打印的,它的确已经打出了汉字呀。各位大哥帮个
忙吧。
 
我用过条码机打汉字 请用E-mail联系
bowl@sy163.net
 
虽然时间很长,但还是没有搞定。[:(!]
3号发分。
 
受Bowl的启发,你试一试下面的代码,当然你应该根据你的情况做出改变
procedure TForm1.Button1Click(Sender: TObject);
var
bitmap:TBitMap;
y,x:integer;
begin
for y:=0 to label1.height-1 do
begin
for x:=0 to label1.Width-1 do
begin
if label1.Canvas.Pixels[x,y]=clBlack then
Image1.Canvas.Pixels[x,y]:=clBlack
else
Image1.Canvas.Pixels[x,y]:=clwhite;
end;
end;
//以上的代码可以执行,以下的代码因为没有安装打印机,没有试验,你试一试吧
bitmap:=TBitmap.Create;
bitmap.Assign(TPersistent(Image1.Picture.Graphic));
Printer.Begindoc;
Printer.Canvas.Draw(Image1.Left,Image1.top,Image1.Picture.Graphic);
Printer.EndDoc;
end;
 
你的打印机支持图形模式,你应该先查打印机说明书,掌握控制码的使用方法,尤其是
图形模式的进入、点阵信息的格式、图形模式的退出等方法。打印时,先向打印机端口
写入控制字符,使打印机进入图像模式,再按指定格式写入图像点阵信息,写完后清缓
冲区,打印机便会打印出想要的结果。
 
to chuguozhen: 我在程序里不能操作printer,只能操作并口,所以你的方法对于我
的程序不可行,不过也谢谢你了。此问题虽没解决,但分存着也无利息,还是分了算了。
 
多人接受答案了。
 
阿蛮:
我现在碰到了和你一样的问题了,我现在的打印机是TMU-210,也是不带硬字库的,请问
你解决了么?如果解决,望能不吝赐教,谢谢!
 
尚未解决。[:(]
 
后退
顶部