Тексты программ___________________________________________291
if Name.FNameo'' then begin
Assign(F,Name.PName) ;
{$!-} Reset (F,1) ;
{$!+} if IQResultoO then
Exit; (Ошибка доступа к файлу/ end;
х0 := GetX; (Текущие координаты} у 0 := GetY;
for k := 1 to Length(S) do begin
с :- ord(S[k]> ;
if с in [FirstChr..LastChar] then if Name.FNameo'' then
begin (Берем шрифт из файла}
{$!-} Seek(F,Offs [с]) ;
BlockRead(E',Buf,Leng[c] ,j);
{$!+}
if (IOResult=0) and (Leng[c]-j) then OutChar(Buf) end
else (Шрифт загружен в память} with Name.Addrs do begin
PB := ptr(sa,oa+0ffs[c]);
OutCharfPB") end end;
MoveTo(xO,yO) ;
if Name. FNameo' ' then
Close(F) end end; {OutString} ^=,-,»=»-«=.-=; end. {F_Gc'rext} ("=-======»=»=/
ПЗ. РЕДАКТОР ВЕКТОРНЫХ ШРИФТОВ
В этом приложении приводится орисание работы и текст программы, предназначенной для редактирования существующих или создания новых векторных BCI— шрифтов. Такие шрифты используются для вывода текстовых сообщений стандартными процедурами OutText и OutTextXY, а также процедурой OutString из модуля F_GrText в графическом режиме работы экрана. Описание формата BCI— шрифтов приведено в п. 1.2. Программа рассчитана на работу с мышью и экраном типа EGA/VGA.
П3.1. Интерфейс с пользователем
Для запус ка программы следует дать команду
fontedit [FName]
В квадратных скобках указан необязательный параметр, определяющий имя уже существующего CHR— файла.
В момент запуска программа проверяет параметры обращения и, если указано имя FName, настраивается на редактирование шрифта из этого файла. Например, обращение
fontedit trip