Posso determinare la geometria dei pixel a livello di codice?


8

Schermi diversi possono avere una geometria dei pixel diversa , in modo che i componenti rosso, verde e blu siano disposti in modelli diversi. L'uso del rendering sub-pixel per dare una risoluzione apparente più alta è possibile solo se la geometria dei pixel è nota (ciò che migliorerà la chiarezza su un tipo di monitor peggiorerà le cose su un altro).

Ciò è particolarmente rilevante se un'applicazione deve essere eseguita sia su un desktop / laptop che su uno schermo mobile, poiché una diversa geometria dei pixel è abbastanza comune negli schermi mobili.

C'è un modo per determinare quale geometria lo schermo utilizza in fase di esecuzione, senza dover chiedere all'utente? Mi interessa sapere se ciò è possibile in generale, ma idealmente mi piacerebbe sapere se ciò è possibile quando si utilizza JavaScript con WebGL.


Non troverai nulla di rilevante solo guardando OpenGL, forse una libreria JavaScript può farlo
— Ryp

Non credo che tu possa, ecco perché Microsoft chiede all'utente.
— joojaa,

Mi chiedo se ciò significhi che non esiste mai un modo per determinarlo, o semplicemente che alcuni monitor non forniscono tali informazioni.
— trichoplax,

3
beh, penso che tu possa ottenere il modello e il modello del tuo monitor, forse c'è un repository che lo elenca? Se non c'è ciò che impedisce a qualcuno di noi di costruirlo?
— joojaa,

Risposte:


1

Sembra che Microsoft abbia puntato su questo in Windows 7:

Sintonizzatore di testo ClearType

Questo è il metodo disponibile nel pannello di controllo per selezionare il layout utilizzato da ClearType.

Inoltre, sembra che iOS e il moderno stile dell'interfaccia utente di Windows riducano fortemente l'antialias subpixel, a causa della prevalenza di animazioni e rotazioni dello schermo. Di conseguenza, mi aspetto che i fornitori di sistemi operativi non spendano molto sforzo nel tentativo di capire il layout subpixel di ogni schermo.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.