Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

1227

.pdf
Скачиваний:
4
Добавлен:
15.11.2022
Размер:
12.5 Mб
Скачать

ЗАМЕЧАНИЕ Следующие графические функции используют те­

кущий цвет: arc, ellipse, floodfill, lineto, outgtext, pie, rectangle и setpixel.

Функция sctcolor принимает значение 1NTEGER*2 в качестве параметра, являющегося индексом цвета.

Индекс цвета, принимаемый по умолчанию, является наивысшим пронумерованным индексом цвета в текущей палитре.

Возвращается предыдущий цвет. Если функция выпол­ няется неуспешно (например, используется в текстовом режиме), то возвращается значение -1.

СМ. ТАКЖЕ

arc, ellipse, floodfill, getcolor, lineto, outgtext, pie, rectangle, selectpalette и setpixel.

7.39 Установка маски заполнения. SETFILLMASK

СИНТАКСИС CALLsetfilImask( mask)

ДЕЙСТВИЕ

Процедура setfillmask устанавливает текущую маску заполнения цветом.

ЗАМЕЧАНИЕ

Маска представляет собой массив 8x8, где каждый бит представляет элемент изображения (пиксел). Установка бита в 1 присваивает соответствующему пикселу текущий цвет; установка 0 оставляет пиксел неизменным.Маска повторяется для всей заполняемой цветом области. Если маска не установ­ лена, то используется только текущий цвет.

Возвращаемое значение отсутствует.

СМ. ТАКЖЕ

ellipse, floodfill, getfillmask, pic, rectangle.

7.40 Установка текущего шрифта. SETFONT

СИНТАКСИС

dummy = setfont ( options )

ДЕЙСТВИЕ

Функция setfont выполняет поиск единственного шрифта из набора зарегистрированных, имеющего характе­ ристики, специфицированные строкой options.

Если шрифт найден, он устанавливается как текущий шрифт.

ЗАМЕЧАНИЕ Текущий шрифт используется во всех последователь­

ных вызовах функции outgtext. Активным может быть только один шрифт.

Параметры функции setfont задаются строкой симво­ лов, которые определяют желаемые характеристики шрифта.

Определение параметров см. в табл.6.1 /.

Пользователь может задать любое количество парамет­ ров, исключая параметр пх, который следует использовать как единственный параметр.

При задании взаимно исключающих параметров (на­ пример т/ р или r/v) функция setfont игнорирует их.

Литера "Ь" в поле "options" предписывает функции setfont автоматически выполнять процедуру выбора наиболее подходящего шрифта, который соответствует специфициро­ ванным характеристикам.

При выборе наиболее подходящего шрифта функция setfont использует следующую последовательность критериев:

1.Высота символов "шрифта.

2.Начертание шрифта.

3.Ширина символов шрифта.

4.Разрядка шрифта.

Если специфицируется параметр пх, то функция setfont будет игнорировать любые другие задаваемые" параметры и поддерживать только шрифт, номер которого соответствует х.

Функции работы со шрифтами оказывают воздействие только на вывод с использованием процедуры oulgtext.

При успешном завершении возвращается значение 0; в противном случае возвращается значение -1.

СМ. ТАКЖЕ

gelfontinfo, gelgtextextcnt, outgtext, registerfonts, unregisterfonts.

7.41 Установка шаблона для рисования линии. SETLINESTYLE

СИНТАКСИС

CALL setlinestyle ( mask )

ДЕЙСТВИЕ

Процедура setlinestyle осуществляет выбор маски (сти­ ля изображения линий), используемой для рисования линий.

ЗАМЕЧАНИЕ Маска представляет собой 16-и разрядное число, где

каждый бит представляет элемент изображения рисуемой ли­ нии. Если бит установлен в значение 1, то соответствующий пиксел устанавливается в текущий цвет; если бит установлен в 0, то пиксел остается без изменений. Шаблон повторяется по всей длине линии. По умолчанию принимается маска #FFFF (сплошная линия).

Возвращаемое значение отсутствует.

СМ. ТАКЖЕ

gctlinestyle, lineto, rectangle.

7.42 Установка значения заданного пиксела. SETPIXEL, SETPIXEL.W

СИНТАКСИС

dummy = setpixeK х. у )

ДЕЙСТВИЕ

Функции sctpixel и setpixel__w устанавливают элемент изображения (пиксел) в текущий цвет.

Функция sctpixel использует координаты порта прос­ мотра (х\у).

Функция setpixel_w использует оконные координаты.

ЗАМЕЧАНИЕ

В случае успеха функции sctpixel и setpixel_w возвраща­ ют предыдущее значение целевого элемента изображения. В противном"случае возвращается значение -1.

СМ. ТАКЖЕ

getpixcl, sclcolor.

7.43 Установка цвета вывода текста. SETTEXTCOLOR

СИНТАКСИС

dummy = settextcolor( index )

ДЕЙСТВИЕ

Функция settextcolor устанавливает текущий цвет тек­

ста.

ЗАМЕЧАНИЕ

Значение index специфицирует новый индекс цвета; по умолчанию он соответствует максимальному индексу цвета. Цвет текста устанавливается только функцией settextcolor и оказывает воздействие только на вывод текста при помощи процедуры outtext. Данная функция не оказывает воздействия на цвет, устанавливаемый оператором WRITE или на цвет текста, выводимого при помощи процедуры oulgtext.

В цветном текстовом режиме пользователь может спе­ цифицировать индекс цвета в диапазоне значений от 0 до 31. Цвета со значениями от 0 до 15 интерпретируются как нор­ мальные, а со значениями от 16 до 31 - как мерцающие цвета с номерами от 0 до 15. Диапазон номеров нормальных цветов показан таблице 6.15.

В каждом текстовом режиме, включая монохромный, функция getvideoconfig возвращает значение 32 для числа раз­ решенных цветов. Значение 32 указывает диапазон значений (0-31), допустимых для использования функцией settextcolor. В этот диапазон включено 16 нормальных цветов (0-15) и 16 мерцающих цветов (16-31).

Возвращается индекс цвета предыдущего цвета текста.

СМ. ТАКЖЕ

gcttexliolor, outtexxt.

7.44 Установка формы текстового курсора. SETTEXTCURSOR

СИНТАКСИС -

dummy = settextcursor( attr )

ДЕЙСТВИЕ

Фукция settextcursor устанавливает форму курсора с использованием специфицированного атрибута курсора atlr. Старший байт параметра altr определяет начало линии курсо­ ра; младший байт - ее конец.

ЗАМЕЧАНИЕ

Функция settextcursor использует такой же формат при установке курсора, что и процедуры BIOS. Значения атрибута курсора показаны ниже.

#0707 Подчеркивание #0007 Полный блок курсора #0607 Двойная линия" #2000 Отсутствие курсора

Функция предназначена для работы только в текстовом режиме.”

Возвращается предыдущий атрибут курсора пли -1, если возникает ошибка (например, вызов функции в графическом экранном режиме).

СМ. ТАКЖЕ

displaycursor, gettexteursor.

7.45 Установка текущей позиции вывода текста. SETTEXTPOSITION

СИНТАКСИС

CALL settextposition( row, column, rccoord )

ДЕЙСТВИЕ

Функция settextposition выполняет переразмещение те­ кущей позиции текста для отображения символа (row, column). Последующий текст, получаемый при помощи функ­ ции outtefct, выводится с указанной позиции.

Предыдущая текстовая позиция возвращается в виде структуры rccoord, определенной в файле FGRAPH.FD.

Оператор WRITE передает символы CR и LF на экран в начале первого оператора, следующего за оператором WfRITE. Это может привести к непредсказуемому размещению текста, если графические процедуры settextposition и outlcxt исполь­ зуются вместе соператором W'RITE. Предотвратить вероятные конфликты возможно путем использования дескриптора пре­ образования в виде обратного слэша (для подавления символов CR-LF) в соответствующем операторе FORMAT.

Возврашаемос"значснис отсутствует.

СМ. ТАКЖЕ

geltextposition, outtext, settextwindow.

7.46Установка количества строк экрана.

SETTEXTROWS

СИНТАКСИС

dummy = settextrows( rows )

ДЕЙСТВИЕ

Функция scttextrows специфицирует число строк тек­ ста, используемых в текстовом режиме. “

ЗАМЕЧАНИЕ Требует наличия технических средств, поддерживаю­

щих 43-х или 50-и строчные режимы, такие как EGA или VGA.

В параметре rows со значением SMAXTEXTROWS выбирается число разрешенных строк: в текстовом режиме 50 строк (VGA); 43 строки (EGA) и 25 строк для остальных вариантов. В графическом режиме поддерживаются 30 или 60 строк (при­ нимается значение 60).

Возвращается число строк, либо 0 в случае возникно­ вения ошибки.

СМ. ТАКЖЕ

gctvidcoconfig, setvideomode, sclvideomoderows.

7.47 Установка окна для вывода текста. SETTEXTWINDOW

СИНТАКСИС

CALL scttcxtwindow( г1, cl, г2, с2 )

ДЕЙСТВИЕ

Процедура settextwindow специфицирует окно в ко­ ординатах строк и столбцов, в котором выполняется вывод текста. Параметры (г1 ,с1) задают верхний левый, а параметры (г2,с2) - нижний правый угол окна.

ЗАМЕЧАНИЕ Текст выводится в окне сверху вниз. По заполнении

окна выполняется сдвиг текста вверх'для вывода следующей

порции текста.

Данная функция нс оказывает влияния на вывод текста, выполняемый при помощи процедуры outgtext. Для отобра­ жения области для вывода текста заданным шрифтом следует

использовать функцию setviewport. Возвращаемое значение отсутствует.

СМ. ТАКЖЕ

gettextposition, outtext, settextposition.

7.48Установка видеожима. SETVIDEOMODE

СИНТАКСИС

dummy = setvideomode( mode )

7.50 Установка координат начальной точки. SETVIEWORG

СИНТАКСИС

CALL setvieworg( х, у, \ycoord )

ДЕЙСТВИЕ

^ Процедура setvieworg выполняет перемещение точки оазы координат порта просмотра (0,0) в точку физических координат (хл ) и возвращает физические координаты преды­ дущей базы в виде структуры xvcoord. определенной в тайле FTGRAPH.FD.

СМ. ТАКЖЕ

gelphyscoord, getviewcoord, getwindowcoord. setcliprgn, setviewport."

7.51Установка порта просмотра. SETVIEWPORT

СИНТАКСИС

CALLsetviewport ( xl, yl, x2, y2)

ДЕЙСТВИЕ

Процедура setviewport переопределяет графический порт просмотра с определением области клипа способом, ана­ логичным выполняемому процедурой sclcliprgn, и установкой базы координат порта просмотра в точк\ левого верхнего угла области.

ЗАМЕЧАНИЕ

Физические точки (xl,yl) и '\2,\2) указывают на ле­ вый верхний и правый нижний углы прямоугольной области

клипа.

Любые преобразования над окнами, выполняемые функцией selvvindow, применимы относительно порта прос­ мотра, но не для всего экрана.

Возвращаемое значение отсутствует.

СМ. ТАКЖЕ

.sclcliprgn, setvieworg, setwindow.

7.52 Установка номера видимой страницы. SETV ISU A LPAGЕ

СИНТАКСИС

dummy = setvisualpage( page )

ДЕЙСТВИЕ

Функция selvisualpage осу шествлчсг выбор текущей ви­ деостраницы при наличии адаптеров EGA или VGA и доста­ точной области памяти для полдержки множества экранных страниц. Параметр page специфицирует текущую видеостра­ ниц} . По умолчанию принимается значение 0.

ЗАМЕЧАНИЕ Возвращается номер предыдущей видео-страницы. В

случае сбоя возвращается отрицательное значение.

СМ. ТАКЖЕ

gctactivcpagc, getvisualpage, setactivepage, setvideomode.

7.53 Установка параметров окна. SETWINDOW

СИНТАКСИС

dummy = setwindow( finvert, wxl, wyl, wx2, wy2)

ДЕЙСТВИЕ

Функция setwindow определяет границы окна в спе­ цифицированных координатах. Параметры (wxl,wyl) задают верхний левый угол окна; параметры (wx2,wy2) задают ниж­

ний правый угол окна.

Параметр finvert задает направление координат. Если этот параметр имеет значение .TRUE., то значения по оси ординат увеличиваются на экране снизу вверх; если значение есть .FALSE., то увеличение выполняется сверху вниз.

ЗАМЕЧАНИЕ Любые преобразования окна, выполняемые функцией

setwindow, применимы только для порта просмотра, но не для

всего экрана.

Если wx 1 = wx2 или wy 1= wy2, то функция не выполня­

ется.

Данная функция не оказывает воздействия на вывод,

выполняемый функцией outgtext.

При успешном выполнении функции возвращается не­ нулевое значение. В противном случае возвращается значение

СМ. ТАКЖЕ setviewport.

7.54 Отключение шрифтов. UNREGISTERFONTS

СИНТАКСИС

CALL unregisterfontsO

ДЕЙСТВИЕ

Процедура unregisterfonts освобождает память, ранее выделенную с использованием процедуры registerfonts. Дан­ ная функция удаляет информацию заголовков всех шрифтов и выгружает текущий выбранный шрифт из памяти.

ЗАМЕЧАНИЕ

Любая попытка использовать функции sctfonl или outgtext после вызова фу нкции unregisterfonts вызывает ошиб­ ку.

Возвращаемое значение отсутствует.

СМ. ТАКЖЕ

getfontinfo, gettextextent, setfont, outgtext, registering.

7.55 Установка режима переноса текста. WRAPON

СИНТАКСИС

dummy = wrapon( option)

ДЕЙСТВИЕ

Функция wrapon осуществляет управление переносом строки, выводимой с использованием функции outtcxt. Текст переносится на новую строку или просто обрывается при до­ стижении текстом края текстового окна. Параметр option мо­ жет принимать значение одной из следующих символическох констант:

$GWRAPOFF — Обрывание строки по границе окна $GWRAPON — Перенос строки по границе окна

Данная функция не оказывает воздействия на вывод процедур работы со шрифтами.

Возвращается предыдущее значение параметра option. Возвращаемый код ошибки отсутствует.

СМ. ТАКЖЕ settextwindow.

ГЛАВА 8

ВЫПОЛНЕНИЕ ПРОГРАММ

В данном разделе рассматриваются опции команды ком­ пилятора FL, а также опции редактора связей LINK и биб­ лиотекаря LIB. Кроме этого вданном разделе коротко рассмот­ рены вопросы использования символьного отладчика фирмы Microsoft CodeView.

8.1Опции команды FL

Опции команды FL дают пользователю следующие воз­ можности:

—установка модели памяти:

—выбор способа выполнения операций над числами с пла­

вающей точкой; —управление допустимыми свойствами языка ФОРТРАН;

—создание программ, исполняемых в среде операционной среды OS/2;

—оптимизация программ для минимизации размера за­ нимаемой области памяти или максимизации скорости испол­

нения программ; —автоматическое ассемблирование и компоновка проце­

дур. написанных на машинном языке; —создание путей поиска для файлов;

—переключение предупреждающих сообщений об ошиб­ ках компилятора;

—выбор формата страниц и заголовков для выходных лис­ тингов.

Команда FL имеет следующий обошенный формат: FL[<option>.. ||<filcspec>..>|<option>.. ][<filespcc>.. I

[/link[<Iibfic!d> Ulinkopiions ] ][/MA <option> |

ПРИМЕЧАНИЕ

x

Если некоторое синтаксическое предложение нс умеща­

ется на одной строке, оно г

сажается на 2-ой, 3-ей и т.д.

строках.

Каждый параметр <option> являегя одним из описывае­ мых вданном руководстве параметров; каждое 'описание фай­ ла” <filespcc> именует обрабатываемый файл.

В командной строке пользователь может указать сколь­ ко угодно параметров и имен Файлов; однако, при этом длина строки нс должна превышать 128 литер.

Пользователь может обрабатывать сразу группу фай­ лов, имеющих требуемое расширение имени, используя для этих целей литеры универсального сопоставления DOS ( * и ? ). Как использовать данные литеры, описано в руковод­ стве по операционной системе DOS.

Любое "описание файла”, задаваемое в командной стро­ ке FL параметром <filespcc>, может включать полную или

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]