Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Graphics Device Interface
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
{{Short description|Microsoft Windows API}} [[File:Windows_2000_architecture.svg|thumb|The Graphics Device Interface in the [[architecture of Windows NT]]]] [[File:GDK software architecture.svg|thumb|For example [[GDK]] makes use of '''GDI'''.]] The '''Graphics Device Interface''' ('''GDI''') is a legacy component of [[Microsoft Windows]] responsible for representing graphical objects and transmitting them to [[output devices]] such as [[computer display|monitors]] and [[computer printer|printers]]. It was superseded by [[DirectDraw]] API and later [[Direct2D]] API.{{Citation needed|date=May 2023}} Windows apps use [[Windows API]] to interact with GDI, for such tasks as drawing lines and curves, rendering [[Typeface|fonts]], and handling [[Palette (computing)|palettes]]. The [[Windows USER]] subsystem uses GDI to render such UI elements as window frames and menus. Other systems have components that are similar to GDI; for example: [[Classic Mac OS|Mac OS]] had [[QuickDraw]], and [[Linux]] and [[Unix]] have [[X Window System]] core protocol. GDI's most significant advantages over more direct methods of accessing the hardware are perhaps its scaling capabilities and its abstract representation of target devices. Using GDI, it is possible to draw on multiple devices, such as a screen and a printer, and expect proper reproduction in each case. This capability is at the center of most "[[WYSIWYG|What You See Is What You Get]]" applications for Microsoft Windows. Simple games that do not require fast graphics rendering may use GDI. However, GDI is relatively hard to use for advanced animation, lacks a notion for synchronizing with individual [[video frame]]s in the [[video card]], and lacks hardware [[rasterization]] for 3D. Modern games usually use [[DirectX]], [[Vulkan]], or [[OpenGL]] instead.
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)