La risposta semplice è bitmaps, infatti questo si applicherebbe anche ai caratteri sui terminali nei primi giorni.
del GUI originale, cose come Xerox Parc's Alto GUI erano basati su display bitmap e la grafica sono state elaborate con strumenti di disegno semplice bitmap e librerie grafiche, utilizzando la geometria semplice per determinare forme come cerchi, quadrati, rettangoli, ecc, e poi mappare mostra i pixel.
La GUI di oggi è la stessa, tranne che con software e hardware aggiuntivi che hanno velocizzato e migliorato il processo e le prestazioni di queste GUI.
La mappatura fondamentale dei bit, ad es. 10101010 in pixel dipende dall'hardware del display, ma a livello semplicistico, si fornisce un buffer di visualizzazione in memoria e si popolano semplicemente i byte con i dati di visualizzazione.
Quindi, per una bitmap monocromatica di base, la si disegna fornendo bit che rappresentano la forma che si desidera disegnare, è possibile posizionare questi bit, in questo modo, un semplice pulsante 8x8pix.
01111110
10000001
10000001
10111101
10111101
10000001
10000001
01111110
quale si può vedere più facile se mi rendo con # e lo spazio invece di 1 e 0.
######
# #
# #
# #### #
# #### #
# #
# #
######
che come immagine bitmap sarebbe simile a questa: http://i.stack.imgur.com/i7lVQ.png (so che è un po ' piccolo :) ma questo è il tipo di scala in cui avremmo iniziato, quando le GUI sono state sviluppate per la prima volta.)
Se disponevi di uno schermo a colori più complesso (ad esempio 24 bit, dovresti fornire ogni pixel utilizzando un 24 bit numero.)
Ovviamente alcune bitmap non possono essere disegnate manualmente (ad esempio il bordo di una finestra), come abbiamo fatto sopra, qui è dove la geometria è utile, e possiamo usare semplici funzioni per determinare i valori dei pixel necessari per disegnare un rettangolo , o qualsiasi altra forma semplice, e quindi costruire da lì.
Una volta che si è in grado di disegnare grafica in questo modo su un display, si aggancia un ciclo di disegno a un interrupt di sistema per mantenere aggiornato lo schermo (si ridisegna lo schermo molto spesso, a seconda delle prestazioni del sistema.) In questo modo puoi farlo gestire l'interazione da dispositivi dell'utente, ad es un topo.
Nei primi tempi, anche prima di Xerox Parc/Alto c'erano un certo numero di primi sistemi di computer che disponevano di display basati su vettori, questi costituivano un'immagine disegnando linee su una rappresentazione CRT di un piano cartesiano.Tuttavia, questi display non hanno mai visto l'uso tradizionale, tranne forse in alcuni dei primi videogiochi, come Asteroids e Tempest.
Dipende interamente dalla piattaforma. – EboMike
Quando si dice "PC", si intende probabilmente "Windows"? Ok, il prossimo: di quale livello stiamo parlando? Stai creando un'app per Windows con la sua GUI? O stai scrivendo il tuo sistema creativo ?! – EboMike
Quando dico un PC intendo un PC non Windows. Sono dual windows di avvio e Linux allo stesso tempo. Un esempio per Windows o Linux sarà utile ma voglio davvero essere indipendente dalla piattaforma. Voglio occuparmi direttamente dell'hardware. Non sto cercando di ottenere una certa funzionalità, ma voglio sapere come funziona una cosa del genere. – Lettuce