बोरलैंड ग्राफिक्स इंटरफ़ेस
Written in | C++ |
---|---|
Platform | DOS |
Type | library or framework |
बोरलैंड ग्राफिक्स इंटरफेस, जिसे बीजीआई के रूप में भी जाना जाता है, 1987 से डॉस ऑपरेटिंग सिस्टम के लिए कई बोरलैंड कंपाइलर्स के साथ बंडल की गई ग्राफिक्स लाइब्रेरी थी। बीजीआई का उपयोग चार पेशेवरों स्प्रेडशीट सहित कई अन्य बोरलैंड उत्पादों के लिए ग्राफिक्स प्रदान करने के लिए भी किया गया था।
लाइब्रेरी लोडेड ग्राफ़िक ड्राइवर (*.BGI
) और वेक्टर फोंट (*.CHR
) डिवाइस से स्वतंत्र ग्राफिक्स समर्थन प्रदान करने के लिए डिस्क से। कंपाइलर द्वारा प्रदान की गई उपयोगिता की सहायता से ग्राफिक ड्राइवर को ऑब्जेक्ट कोड के रूप में जोड़कर ग्राफिक ड्राइवर को निष्पादन योग्य फ़ाइल में एम्बेड करना प्रोग्रामर के लिए संभव था (bgiobj.exe
). उस समय के सामान्य ग्राफिक एडेप्टर और प्रिंटर के लिए ग्राफिक ड्राइवर थे, जैसे CGA, EGA, VGA, Hercules, एटी एंड टी 400, एमसीजीए और 3270 पीसी। कुछ प्रकार के प्लॉटर्स के लिए बीजीआई ड्राइवर भी थे।
डॉस के लिए अंतिम बोरलैंड का सी++ आईडीई बोरलैंड सी++ 3.1 (1992) है। अंतिम C++ पर्यावरण जो BGI का समर्थन करता है वह Borland C++ 5.02 (1997) है, जो विंडोज के तहत काम करता है लेकिन DOS प्रोग्राम को संकलित कर सकता है। BGI को C/C++ में एक्सेस किया जा सकता था graphics.lib
/ graphics.h
, और पास्कल में graph
इकाई।
बीजीआई सरल DirectMedia परत या ओपनजीएल जैसे आधुनिक ग्राफिक्स पुस्तकालयों से कम शक्तिशाली था, क्योंकि इसे इवेंट-आधारित 3डी अनुप्रयोगों के बजाय 2डी प्रस्तुति ग्राफिक्स के लिए डिज़ाइन किया गया था। हालाँकि, इसे कोड के लिए सरल माना गया है।[1]BGI और Turbo C++, हालांकि अप्रचलित हैं, अभी भी भारत में शिक्षा में व्यापक रूप से उपयोग किए जाते हैं।[2][3]
तृतीय-पक्ष बीजीआई ड्राइवर
बोरलैंड कंपाइलर्स की लोकप्रियता को देखते हुए, कुछ स्वतंत्र सॉफ्टवेयर डेवलपर्स ने गैर-मानक वीडियो मोड, उन्नत वीडियो कार्ड, प्लॉटर, प्रिंटर और ग्राफिक्स फाइल आउटपुट के लिए बीजीआई ड्राइवरों का उत्पादन किया।[4]
1994 में जॉर्डन हार्ग्राफिक्स सॉफ्टवेयर ने एसवीजीए बीजीआई ड्राइवर संस्करण 5.5 जारी किया जो कुछ एसवीजीए हार्डवेयर जैसे एटीआई टेक्नोलॉजीज इंक या सिरस तर्क कार्ड और वीईएसए वीबीई-संगत कार्ड के साथ संगत है। इसके अलावा वीजीए द्वारा समर्थित गैर-मानक ग्राफ़िक मोड के लिए वीजीए ड्राइवर सीधे अपने रजिस्टरों में लिखकर, टर्बो पास्कल 7.0 के लिए संरक्षित मोड ड्राइवर संस्करण और माउस ड्राइवर (वास्तव में मानक माउस ड्राइवरों द्वारा असमर्थित वीडियो मोड के लिए कर्सर हैंडलर) के लिए ट्वीक किए गए वीजीए ड्राइवर हैं। ये ड्राइवर शेयरवेयर थे और उन्हें खरीदकर अपना सोर्स कोड और तकनीकी सहायता प्राप्त करते थे; अब वे समर्थित नहीं हैं, लेकिन 19 दिसंबर 2020 को जॉर्डन हार्ग्रेव ने GitHub पर MIT लाइसेंस के तहत स्रोत कोड जारी किया।[5]मुख्य बग VESA कलर डेप्थ#ट्रू कलर (24-बिट)|ट्रू-कलर मोड्स (इसलिए ट्रू-कलर ड्राइवर Nvidia ग्राफिक कार्ड के लिए उपयुक्त नहीं है) और माउस ड्राइवर में वीडियो स्मृति बैंक स्विचिंग बग में बाइट सपोर्ट की कमी है। चूंकि वास्तविक मोड एड्रेसिंग स्पेस 1 मेगाबाइट है, लेकिन कुछ वीडियो मोड में 4 मेगाबाइट तक मेमोरी की आवश्यकता होती है, इसे 64 किलोबाइट बैंकों में विभाजित किया जाता है)।
विरासत
एक बीजीआई-संगत पुस्तकालय, जिसका नाम है Graph
फ़्री पास्कल पास्कल कंपाइलर में शामिल है।[6]वर्तमान ऑपरेटिंग सिस्टम के लिए कई बीजीआई कार्यान्वयन भी उपलब्ध हैं (बाहरी लिंक देखें।)
उदाहरण
बोरलैंड टर्बो सी के लिए लिखा गया निम्नलिखित प्रोग्राम, ग्राफिक्स को प्रारंभ करता है और 1000 यादृच्छिक रेखाएं खींचता है:
#include <graphics.h>
#include <conio.h>
#include <stdlib.h>
int main (int argc, char *argv[])
{
int i, gd = DETECT, gm;
initgraph(&gd, &gm, "");
setbkcolor(BLACK);
cleardevice();
outtextxy(0, 0, "Drawing 1000 lines...");
for (i = 0; i < 1000; i++) {
setcolor(1 + random(15));
line(random(getmaxx()), random(getmaxy()),
random(getmaxx()), random(getmaxy()));
}
getch();
closegraph();
return 0;
}
यह भी देखें
- Allegro (सॉफ्टवेयर लाइब्रेरी)
- ग्राफिक्स सिस्टम एक्सटेंशन (GSX)
- ग्राफिकल कर्नेल सिस्टम (GKS)
- रायलिब
- साइटेक स्नैप
- यूनीवीबीई
संदर्भ
- ↑ "Computer Graphics", ISRD Group, 2006. ISBN 0070593760
- ↑ Indian engineering colleges are terrible at approaching technology
- ↑ Why is Turbo C++ still being used in Indian schools and colleges?
- ↑ Freeware BGI drivers, Jordan Hargraphix BGI drivers, Knight Software BGI256
- ↑ SuperVGA BGI Drivers for Turbo C/Turbo Pascal/Borland C++
- ↑ Reference for unit 'Graph': Procedures and functions
- Turbo C++ 3.0 User's Guide. Borland International, Inc. 1992.
- Borland C++ Library Reference. Borland International, Inc. 1992.
- Borland Graphics Interface (BGI) Documentation
बाहरी संबंध
- SDL_bgi is a multiplatform port written in SDL2; it provides several extensions.
- Winbgim is a port of BGI for Microsoft Windows; it provides several extensions.
- The GRX graphics library contains a BGI subsystem, mostly compatible with the original BGI.
- OpenBGI library is another port for Microsoft Windows.
- libgraph is a BGI implementation for Linux written in SDL1.
- Fileformat.info page about chr contains some information on how to decode Borland CHR font.
- sunet.se ftp mirror with some CHR font tools.