Posso determinar a geometria do pixel programaticamente?


8

Telas diferentes podem ter geometria de pixel diferente , para que os componentes vermelho, verde e azul sejam organizados em diferentes padrões. O uso da renderização sub-pixel para obter uma resolução aparente mais alta só é possível se a geometria do pixel for conhecida (o que dará uma melhoria na clareza em um tipo de monitor piorará as coisas em outro).

Isso é particularmente relevante se um aplicativo precisar ser executado tanto em um desktop / laptop quanto em uma tela móvel, pois geometria de pixel diferente é bastante comum em telas móveis.

Existe uma maneira de determinar qual geometria a tela usa em tempo de execução, sem precisar perguntar ao usuário? Estou interessado em saber se isso é possível em geral, mas, idealmente, gostaria de saber se isso é possível ao usar JavaScript com WebGL.


Você não vai encontrar nada de relevante apenas olhando para OpenGL, talvez uma biblioteca JavaScript pode fazer isso
Ryp

Eu não acho que você pode, é por isso que a Microsoft pergunta ao usuário.
joojaa

Gostaria de saber se isso significa que nunca há uma maneira de determinar isso, ou apenas que alguns monitores não fornecem essas informações.
Trichoplax

3
bem, acho que você pode pegar o modelo e fazer do seu monitor talvez haja algum repositório que lista isso? Se não existe o que impede alguém de construí-lo?
Joojaa

Respostas:


1

Parece que a Microsoft colocou isso no Windows 7:

Sintonizador de texto ClearType

Esse é o método disponível no painel de controle para selecionar o layout que o ClearType usa.

Além disso, parece que o iOS e o estilo moderno de interface do usuário do Windows enfatizam bastante o antialiasing de subpixel, devido à prevalência de animações e rotações de tela. Como resultado, espero que os fornecedores de SO não dediquem muito esforço tentando descobrir o layout de subpixel de todas as telas.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.