Uses MyCrt, Graph{Bgi_Inc,}; Procedure Grafikusra; Var grDriver: Integer; grMode: Integer; ErrCode: Integer; begin DetectGraph(grDriver, grMode); { grDriver := Detect;} InitGraph(grDriver, grMode,'c:\langs\tp\bgi'); ErrCode := GraphResult; if not ErrCode = grOk then Writeln('Graphics error:', GraphErrorMsg(ErrCode)); end; Var fntnum,fntsize : byte; Procedure RakdKi; Const fontok : array[0..4] of String[9] = ('Default','Triplex','Small','SansSerif','Gothic'); Var s : String; i : Byte; Begin ClearDevice; SetTextStyle(fntnum,0,fntsize); Str(fntsize,s); OutText('Font neve : '+fontok[fntnum]+', mret : '+s); MoveTo(0,GetY+TextHeight(#219)+1); OutText('RVZTR TKRFRGP'); MoveTo(0,GetY+TextHeight(#219)+1); OutText('rvztr tkrfrgp'); MoveTo(0,GetY+TextHeight(#219)+1); OutText('RVZTR TKRFRGP'); MoveTo(0,GetY+TextHeight(#219)+1); OutText('rvztr tkrfrgp'); MoveTo(0,GetY+TextHeight(#219)+1); OutText('ABCDEFGHIJKLMNOPQRSTUVWXYZ'); MoveTo(0,GetY+TextHeight(#219)+1); OutText('abcdefghijklmnopqrstuvwxyz'); MoveTo(0,GetY+TextHeight(#219)+1); OutText('0123456789'); s:=' '; For i:=1 to 255 do Begin s:=s+chr(i); if (i and 15)=15 then Begin MoveTo(0,GetY+TextHeight(#219)+1); OutText(s); s:=''; End; End; End; Var c : Char; regi : Word; BEGIN Grafikusra; { RakdKiAzAblakokat;} fntnum:=0; fntsize:=0; RakdKi; c:=#1; repeat c:=ReadKey; If c=#0 then Begin c:=ReadKey; regi:=fntnum+fntsize*4; Case c of #77 : If fntnum<4 then inc(fntnum); #75 : If fntnum>0 then dec(fntnum); #80 : If fntsize>0 then dec(fntsize); #72 : If fntsize<10 then inc(fntsize); End; If fntnum+fntsize*4<>regi then RakdKi; End; until c=#27; CloseGraph; END.