Графический интерфейс Borland - Borland Graphics Interface

Графический интерфейс Borland
BGIdemoКоллаж
BGIdemoКоллаж
Написано вC ++
ПлатформаДОС
Типбиблиотека или же рамки

В Графический интерфейс Borland, также известная как BGI, представляет собой графическую библиотеку, в которую входит несколько Borland компиляторы для ДОС операционных систем с 1987 года. BGI также использовался для предоставления графики для многих других продуктов Borland, включая электронную таблицу Quattro. В библиотеку загружены графические драйверы (* .BGI) и векторные шрифты (* .CHR) с диска, чтобы обеспечить независимую от устройства поддержку графики. Программист мог встроить графический драйвер в исполняемый файл, связав графический драйвер как объектный код с помощью утилиты, предоставляемой компилятором (bgiobj.exe). Существовали графические драйверы для обычных графических адаптеров и принтеров того времени, такие как CGA, EGA и VGA. Также были драйверы BGI для некоторых видов плоттеров.

Последней IDE Borland C ++ для DOS является Borland C ++ 3.1 (1992). Последней средой C ++, поддерживающей BGI, является Borland C ++ 5.02 (1997 г.), которая работает под Windows, но может компилировать программы DOS. BGI был доступен на C / C ++ с graphics.lib / graphics.h, а в Паскале через график единица.

BGI менее мощный, чем современные графические библиотеки, такие как SDL или же OpenGL, поскольку он был разработан для презентационной графики, а не для трехмерных приложений, основанных на событиях. Однако считалось, что его проще кодировать.[1]

Сторонние драйверы BGI

Учитывая популярность компиляторов Borland, несколько независимых разработчиков программного обеспечения создали драйверы BGI для нестандартных видеорежимов, продвинутых видеокарт, плоттеров, принтеров и вывода графических файлов.[2]

В 1994 году компания Jordan Hargraphix Software выпустила SVGA Драйверы BGI версии 5.5, которые совместимы с некоторым оборудованием SVGA, например ATI или же Cirrus Logic карты и VESA VBE -совместимые карты. Также есть настроенные драйверы VGA для нестандартных графических режимов, поддерживаемых VGA путем записи непосредственно в его регистры, защищенный режим версии драйверов для Турбо Паскаль 7.0 и драйвер мыши (фактически обработчик курсора для неподдерживаемых видеорежимов стандартными драйверами мыши). Эти драйверы были условно-бесплатная а купив их, вы получите исходный код и техподдержку; теперь они больше не поддерживаются и приходят как отказаться от ПО. Основные ошибки - отсутствие поддержки выравнивания байтов в VESA. истинный цвет режимах (поэтому драйвер истинного цвета не подходит для Nvidia графические карты) и видеопамять ошибка переключения банка в драйвере мыши (т.к. реальный режим адресное пространство составляет 1 мегабайт, но для некоторых видеорежимов требуется до 4 мегабайт памяти, оно разбито на банки по 64 килобайта).

Пример

Следующая программа, написанная для Borland Turbo C, инициализирует графику и рисует 1000 случайных линий:

#включают <stdio.h>#включают<graphics.h>#включают<conio.h>пустота рисовать (int Икс, int у, int x1, int y1);{        путпиксель(Икс+x1 ,у+y1 ,11);    путпиксель(Икс-x1 ,у+y1 ,11);    путпиксель(Икс+x1 ,у-y1 ,11);    путпиксель(Икс-x1 ,у-y1 ,11);    путпиксель(Икс+x1 ,у+y1 ,5);    путпиксель(Икс-x1 ,у+y1 ,5);    путпиксель(Икс+x1 ,у-y1 ,5);    путпиксель(Икс-x1 ,у-y1 ,5);}пустота Брескирль (int Икс, int у, int р);{    int x1=0, y1=р;    int d=3-2*р;    рисовать(Икс, у, x1, y1);        пока (у>=Икс)    {        Икс++;         если(d>0)         {             у--;             d=d+4*(x1-y1)+10;                      }         еще             d=d+4*x1+6;                          рисовать (Икс, у, x1, y1);             задерживать(500);             }}int главный(){   int Икс, у,р;   int б-г=ОБНАРУЖИТЬ, гм;   интиграф(&б-г, &гм,"");   printf("ВВЕДИТЕ ЗНАЧЕНИЕ КООРДИНАТЫ X:");   сканф("% d", &Икс);   printf("ВВЕДИТЕ ЗНАЧЕНИЕ КООРДИНАТЫ y:");   сканф("% d", &у);   printf("ВВЕДИТЕ ЗНАЧЕНИЕ РАДИУСА:");   сканф("% d", &р);   Брескирль(Икс, у, р);   получить();   возвращаться 0;}

Смотрите также

Рекомендации

  1. ^ «Компьютерная графика», Группа ИСРД, 2006 г. ISBN  0070593760
  2. ^ Бесплатные драйверы BGI, Jordan Hargraphix BGI драйверы

внешняя ссылка

  • SDL_bgi мультиплатформенный порт, написанный на SDL2; он предоставляет несколько расширений.
  • В Графическая библиотека GRX содержит подсистему BGI, в основном совместимую с исходным BGI.
  • Библиотека OpenBGI это еще один порт для Microsoft Windows.
  • libgraph - это реализация BGI для GNU / Linux, написанная на SDL1.
  • Fileformat.info страница о chr содержит информацию о том, как декодировать шрифт Borland CHR.
  • sunet.se ftp-зеркало с некоторыми инструментами шрифтов CHR.
  • Winbgim это порт BGI для Microsoft Windows; он предоставляет несколько расширений.