Different screens can have different pixel geometry, so that the red, green and blue components are arranged in different patterns. Using sub-pixel rendering to give a higher apparent resolution is only possible if the pixel geometry is known (what will give an improvement in clarity on one type of monitor will make things worse on another).

This is particularly relevant if an application needs to run on both a desktop/laptop and a mobile screen, as different pixel geometry is quite common in mobile screens.

Is there a way to determine which geometry the screen uses at runtime, without having to ask the user? I'm interested in whether this is possible in general, but ideally I'd like to know whether this is possible when using JavaScript with WebGL.

  • $\begingroup$ You won't find anything relevant just looking at OpenGL, maybe a JavaScript library can do that $\endgroup$
    – Ryp
    Aug 10, 2015 at 13:18
  • $\begingroup$ I dont think you can, that's why Microsoft asks the user. $\endgroup$
    – joojaa
    Aug 10, 2015 at 13:50
  • $\begingroup$ I wonder if that means there is never a way to determine this, or just that some monitors do not provide that information. $\endgroup$ Aug 10, 2015 at 13:58
  • 3
    $\begingroup$ well, i think you can get the model and make of your monitor maybe there is some repository that lists this? If there is not what stops anybody of us form building it? $\endgroup$
    – joojaa
    Aug 10, 2015 at 14:15

1 Answer 1


It appears that Microsoft has punted on this in Windows 7:

ClearType Text Tuner

This is the method available in the control panel for selecting what layout ClearType uses.

Additionally, it seems that iOS and the Windows modern UI style de-emphasize subpixel antialiasing heavily, due to the prevalence of animations and screen rotations. As a result I expect the OS vendors to not spend a lot of effort trying to figure out the subpixel layout of every screen.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.