Cтраница 1
Графический драйвер ( graphics driver) - программа в BGI-файле, предназначенная для управления графическим режимом соответствующей видеокарты. [1]
Процедура CloseGraph выгружает графический драйвер из памяти и восстанавливает текстовый режим работы видеоадаптера. [2]
Обычно предикат initgraph загружает графический драйвер, заказывая память под него. Соответствующие BGI-файлы загружаются с диска уже во время выполнения програмы. Вместо этой схемы динамической загрузки можно подсоединить файл графического драйвера ( или некоторые из них) прямо к вашей исполняемой программе, добавив директиву компилятора bgidriver в ее заголовке. [3]
Программа считывает с диска графический драйвер и регистрирует его. [4]
С помощью обращения к процедуре GetMeM в динамически распределяемой области для графического драйвера выделяется память. При обращении к процедуре CloseGraph эта память освобождается. [5]
После обращения к процедуре InitGraph для параметра граф драйвер будет установлено значение, соответствующее текущем графическому драйверу, а для параметра граф режим будет установлено значение, соответствующее текущему графическому режиму. [6]
Чтобы графическая система начала работать, вы должны ее инициализировать предикатом initgraph. Этот предикат загружает графический драйвер и переключает систему в графический режим. [7]
Как видно из примера, обратное переключение осуществляется при помощи функции GetCraphMode, которая возвращает номер текущего графического режима. При работе RestoreCRTMode выгрузки графического драйвера не происходит, т.е. он остается в памяти активным. Это и есть основное преимущество процедуры RestoreCRTMode. Предупреждаем, что обратное включение графики устанавливает в исходное состояние все графические параметры модуля Graph. Кроме того, подобные переключения, к сожалению, сбрасывают изображение с экрана. [8]
Особо следует остановиться на совместной работе модулей Graph и Overlay. При включении графических режимов в области кучи отводится место под графический драйвер и шрифты. Этим блокируется возможность изменения оверлейного буфера. [9]
Переменные NewDriver, NewMode возвращают информацию об установленных значениях для драйвера и режима. Переменная DriverPath имеет тип STRING и задает путь к каталогу, в котором размещается графический драйвер. Если в качестве этого параметра указана пустая строка, то файл драйвера разыскивается в текущем каталоге. [10]
Примечания: SetBkColor ( 0) задает использование первого цвета палитры в качестве текущего фонового цвета. Фоновые цвета могут принимать значения в диапазоне от 0 до 15, в зависимости от текущего графического драйвера и текущего графического режима. Для адаптера CGA данная процедура задает цвет развертки. [11]
Примечания: SetColor ( O) задает использование первого цвета палитры в качестве текущего цвета рисунка. Цвета рисунка могут принимать значения в диапазоне о 0 до 15, в зависимости от используемого графического драйвера и графического режима. Для адаптера CGA данная процедура задает цвет развертки. [12]
Примечания: Если данная процедура возвращает значение 0, то это означает, что текущим цветом, используемым для вычерчивания, является первый цвет палитры. Основной цвет может принимать значения от 0 до 15, в зависимости от текущего графического режима и графического драйвера. [13]
Обычно предикат initgraph загружает графический драйвер, заказывая память под него. Соответствующие BGI-файлы загружаются с диска уже во время выполнения програмы. Вместо этой схемы динамической загрузки можно подсоединить файл графического драйвера ( или некоторые из них) прямо к вашей исполняемой программе, добавив директиву компилятора bgidriver в ее заголовке. [14]