毕业设计用到的,谢谢了 菜鸟详细点 调用出来就行 

解决方案 »

  1.   

    直接用编辑文本的方式,往lpt口发送数据就行了
      

  2.   

    //转个帖子 
    在DELPHI   中   提   供   了PRINTDIALOG、PRINTERSETUPDIALOG   两   个   控   件   允   许   我   们   进   行   打   印   机   以   及   其   他   影   响   打   印   输   出   的   选   择,   此   外   最   重   要   的   一   点   是   要   想   实   现   打   印   功   能   必   须   在   编   译   程   序   以   前   将PRINTERS   加   入   到INTERFACE   或   者IMPLEMENTATION   的UESE   语   句   当   中,   因   为PRINTER   单   元   包   括ASSIGNPRN   和   其   他   控   制   打   印   机   的   过   程。                 首   先   在FORM   当   中   加   入MEMO、PRINTDIALOG、PRINTERSETUPDIALOG   和   两   个BUTTON   控   件,   两   个   BUTTON   的CAPTION   分   别   为“   打   印   设   置”   和“   打   印”。   然   后   编   写BUTTON   的   事   件   驱   动   程   序(   代   码   在   下   面),   这   个   简   单   的   例   子   中   只   要   单   击“   打   印”   按   钮   时   便   可   以   在   打   印   机   上   输   出   文   件0S2.TXT,   打   印   事   件   的   清   单   如   下:   implementation 
    uses   printers; 
    {$R   *.DFM} procedure   TForm1.BitBtn1Click(Sender:   TObject); 
    begin 
    printersetupdialog1.execute;     //选择输出的打印机以及其他打印控制选项 
    end; procedure   TForm1.BitBtn2Click(Sender:   TObject); 
    var 
    lines:integer; 
    prntext:system.text;   
    //将PRNTEXT声名为一个在SYSTEM程序单元当中定义的文本文件 
    begin 
          if   printdialog1.execute   then 
            assignprn(prntext);   //将PRNTEST分配给打印机 
          rewrite(prntext);   //调用REWRITE函数,为输出打开已分配的文件 
          printer.canvas.font:=memo1.font;         //把当前MEMO1的字体指定给打印对象的CANVAS的字体属性 
          for   lines:=0   to   memo1.lines.count-1   do 
            writeln(prntext,memo1.lines[lines]); 
          //把MEMO的内容写到打印机对象 
          system.close(prntext);   //关闭打印文件 
    end; procedure   TForm1.FormCreate(Sender:   TObject); 
    begin 
    memo1.lines.loadfromfile( 'c:\dos\os2.txt '); 
    //在FORM建立时读入C:\DOS\OS2.TXT文件     
    end; 
    end.               2、   图   形   的   打   印   功   能,   简   单   的   图   形   打   印   功   能   也   如   打   印   文   本   一   样   的   容   易,   只   是   告   诉   打   印   机   对   象(TPRINTER)   开   始   打   印,   把   图   形   简   单   的   复   制   到   打   印   机   上   去,   最   后   告   诉   打   印   机   结   束   打   印   工   作。                 举   例   说   明:   将   上   面   的   例   子   的MEMO   控   件   换   成IMAGE   控   件,   再   经   过   一   些   简   单   的   修   改,   图   形   打   印   的   代   码   如   下:   procedure   TForm1.BitBtn1Click(Sender:   TObject); 
    begin 
    if   printdialog1.execute   then   
    begin 
    printer.begindoc; 
    printer.canvas.draw(0,0,image1.picture.graphic); 
    printer.enddoc; 
    end; 
    end;               在   这   种   情   况   下,   使   用   的   是   打   印   机   的   分   辨   率,   图   形   在   页   面   的   左   上   角   开   始   打   印   输   出,   打   出   的   图   形   很   小,   在   很   多   的   情   况   下   不   能   符   合   要   求,   但   是   打   印   机   画   布CANVAS   的STRETHDRAW   的   方   法,   可   以   让   我   们   对   图   形   进   行   灵   活   的   处   理,   画   布(CANVAS)   的STRETCHDRAW   方   法   声   名   为:   procedure   StretchDraw(const   Rect:   TRect;   Graphic:   TGraphic); 
    其中的RECT参数代表图形输出区域的大小,TRECT的类型声名为: 
    TRect   =   record 
        case   Integer   of 
            0:   (Left,   Top,   Right,   Bottom:   Integer); 
            1:   (TopLeft,   BottomRight:   TPoint); 
    end;               因   此   我   们   只   要   调   整RECT   的   大   小   及   其   在   打   印   页   面   上   的   位   置,   进   而   达   到   自   己   满   意   的   效   果,   下   面   的   代   码   是   不   断   的   放   大   图   形,   充   满   我   们   定   义   的   矩   形   区   域,   并   将   其   定   位   在   打   印   机   画   布(CANVAS)   的   中   央   进   行   输   出。   代   码   如   下:   procedure   TForm1.Button1Click(Sender:   TObject); 
    VAR 
    strect:Trect;         //定义打印输出矩形框的大小 
    temhi,temwd:integer; 
    begin 
    if   printdialog1.execute   then 
          begin 
            temhi:=image1.picture.height; 
            temwd:=image1.picture.width; 
                  while   (temhi   printer.pageheight   div   2)and 
                            //将图形放大到打印页面的1/2大小 
                      (temwd   printer.pagewidth   div   2)       do 
                                  begin 
                                  temhi:=temhi+temhi; 
                                  temwd:=temwd+temwd; 
                                  end; 
                        with   strect   do         //定义图形在页面上的中心位置输出 
                    begin 
                                  left:=(printer.pagewidth   -temwd)   div   2; 
                                  top:=(printer.pageheight-temhi)   div   2; 
                                  right:=left+temwd; 
                                  bottom:=top+temhi; 
                                  end; 
    with   printer   do 
    begin 
            begindoc; 
                                  //将放大的图形向打印机输出 
        canvas.stretchdraw(strect,image1.picture.graphic);     
            enddoc; 
            end; 
    end; 
    end; 以   上   代   码   在DELPHI2.0   上   编   译   通   过