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.