Gränssnitt för grafiska enheter
Graphics Device Interface är ett API i Microsoft Windows som används för att representera grafiska objekt och överföra dem till utdataenheter, t.ex. skrivare och bildskärmar.
GDI ansvarar för uppgifter som att rita linjer och kurvor, återge teckensnitt och hantera paletter. Det är inte direkt ansvarigt för att rita fönster, menyer etc. Den uppgiften är reserverad för ett annat delsystem som byggs ovanpå GDI. Andra system har komponenter som liknar GDI, till exempel Macintosh QuickDraw och GNOME/GTK GDK/Xlib.
Den kanske viktigaste egenskapen hos GDI jämfört med mer direkta metoder för att komma åt maskinvaran är dess skalningsmöjligheter och abstraktion av målenheter. Med hjälp av GDI är det mycket enkelt att rita på flera enheter, t.ex. en skärm och en skrivare, och förvänta sig korrekt återgivning i varje fall. Denna möjlighet är central för alla What You See Is What You Get-applikationer för Microsoft Windows.
Enkla spel som inte kräver snabb grafikrendering använder GDI. GDI kan dock inte animera ordentligt eftersom det inte har någon synkronisering med rambufferten och saknar rasterisering för 3D. Moderna spel använder vanligen DirectX eller OpenGL i stället, som ger programmerarna möjlighet att använda funktioner i modern maskinvara.
Frågor och svar
F: Vad är Graphics Device Interface (GDI)?
S: Graphics Device Interface (GDI) är ett API i Microsoft Windows som används för att representera grafiska objekt och skicka dem till utdataenheter, t.ex. skrivare eller bildskärmar.
F: Vilka uppgifter ansvarar GDI för?
S: GDI ansvarar för uppgifter som att rita linjer och kurvor, rendera teckensnitt och hantera paletter.
F: Vilka uppgifter ansvarar GDI INTE för?
S: GDI är INTE direkt ansvarig för att rita fönster, menyer, etc. Den uppgiften är reserverad för ett annat delsystem som byggs ovanpå GDI.
F: Vilka är några andra system som har komponenter som liknar GDI?
S: Andra system som har komponenter som liknar GDI är Macintoshs QuickDraw och GNOME/GTKs GDK/Xlib.
F: Vilken är den viktigaste egenskapen hos GDI jämfört med mer direkta metoder för åtkomst till maskinvara?
S: Den viktigaste egenskapen hos GDI jämfört med mer direkta metoder för åtkomst till hårdvara är dess skalningsförmåga och abstraktion av målenheter.
F: Vad är kärnan i alla What You See Is What You Get-applikationer för Microsoft Windows?
S: Möjligheten att rita på flera enheter, t.ex. en skärm och en skrivare, och förvänta sig korrekt återgivning i varje enskilt fall är kärnan i alla What You See Is What You Get-program för Microsoft Windows.
F: Vilken är den största nackdelen med GDI för moderna spel?
S: Den största nackdelen med GDI för moderna spel är att det inte går att animera ordentligt eftersom det inte kan synkronisera med framebuffern och saknar rasterisering för 3D. Moderna spel använder vanligtvis DirectX eller OpenGL istället, vilket ger programmerare möjlighet att använda funktioner i modern hårdvara.