在WINDOWS环境下如何实现DOS一样的文本输出?(100分)

  • 主题发起人 主题发起人 jn98
  • 开始时间 开始时间
J

jn98

Unregistered / Unconfirmed
GUEST, unregistred user!
各位大虾:我查看了以前大富翁的资料,但我还是没有解决问题。
我的程序(如下)在HP200打印机上可以输出正确结果,但在CR3240上
上下对不齐。但WORD无论什么打印机文本打印均能输出正确结果,它是如何实现的?,我是新手请给出详细结果。急急急!

procedure TForm1.Button1Click(Sender: TObject);
var
hfile:textfile;
sfilename:string;
i:integer;
aa:array[1..9] of string;
begin

sfilename:='f:/wr5/bt.txt';
assignfile(hfile,sfilename);
reset(hfile);
try
for i:=1 to 9do

begin

readln(hfile,aa);

end;


printer.begin
Doc;
printer.Canvas.Font.size:=10;
printer.Canvas.TextOut(100,500,'┌─┬───────┬───────┬────┬───┬───┬──┬');
printer.Canvas.TextOut(100,600,'│编│采 样 位 置│ │ │ │ │氧化│');

printer.EndDoc;


finally
closefile(hfile);
end;


end;
 
你应该控制针式打印机进入单项打印模式,
编程序去做比较麻烦,所以你可以在打印机上设置
图形打因为单向打印方式.
 
单向打印模式
 
font.pitch := fpFixed;
 
呵呵, 可以肯定不是单双向的问题, 因为, 如果用双向并且快速, 确实会对不齐线,
但只是轻微对不齐而已, <1MM.
我想, 应该改printer_info_2.pdevmode才行, 仔细看看吧. 最主要应该是dmTTOption.

 
多人接受答案了。
 
后退
顶部