Тексты программ __________ -w>

FirstChar :- MinChr;

CharsCount:» MaxChr-MinChr+1;

Data0ffset:= Offs;

FileSize :» FileSize+16+3*CharsCount end;

{Записываем заголовок} With FontHead do begin

B[AFileSize] :° Lo(FileSize) ;

B[AFileSize+l] :-Hi(FileSize) end;

{Готовим файл} {SI-} Rewrite(F,1) ;

($!+} if IQResultoO then begin Alarm;

Exit end;

if not WriteFile(FontHead,SizeOf(FontHead)) then Exit;

{Записываем описатель)

if not WriteFile(FontPara,SizeOf(FontPara)) then Exit;

{Записываем таблицу смещений) PredO := Offs;

for k :» MinChr to MaxChr do begin

W := Offs-PredO;

if LengD(k]<>0 then

inc(0?fs,LengD[k]) else

inc(Offs,LengD[MinChr]) ;

if not WriteFile(W,2) theo

Exit end;

{Записываем таблицу ширин) for k := MinChr to MaxChr do

if not WriteFile(Widths[k],l) then Exit;

{Записываем данные) for k := MinChr •to MaxChr do if LengD[k]<>0 then

if not WriteFile (Chars [It]*, LengD[k]) then

Exit else else

if not WriteFile(Charstk]",LengD[MinChr]) then Exit;

Close(F); (Все в порядке) ChangeF := False Mid; {SaveFont} ^——————.—————;

Procedure Run;

{Основная работа: чтение мыши или клавиатуры и вызов нужных процедур}

•VAX

BM,XM,YM,B,X,Y: Integer;

x0g,y0g,xlg,ylg: Integer; {Координаты резиновой нити} MPF: Boolean; (Флаг резиновой нити}