2010-07-10 10 views
7

Mi aplicación contiene un UIWebView. Cuando la aplicación gira de vertical a horizontal o viceversa, el peso de la fuente parece cambiar ligeramente. Tanto el texto en negrita como el texto regular se vuelven ligeramente más audaces en el paisaje y un poco más delgados en el retrato.La fuente UIWebView es más delgada en el retrato que en el paisaje

Esto no parece ser el caso en Safari, solo en mi aplicación. Aquí hay una imagen de ejemplo, tomada como una captura de pantalla en el iPad. He rotado y recortado una sección de ejemplo.

alt text http://dl.swankdb.com/font-change-example.png

He configurado el siguiente CSS, pero parece que para evitar el cambio de tamaño de la fuente drástica, no el cambio de peso sutil que estoy observando:

html { 
    -webkit-text-size-adjust: none; /* Prevent font scaling in landscape */ 
} 

¿Alguien puede explicar esto? El simulador no lo hace, pero mi iPad, iPhone 3GS y iPhone 4 lo tienen. También recibí informes de clientes de que les sucede, ¡así que sé que no está en mi cabeza!

+1

¡Su propio fragmento resolvió los problemas de fuente para mí! –

Respuesta

3

Bueno después de pasar una cantidad ridícula de tiempo tratando de resolver esto he encontrado una solución:

Utilice esta:

html {

webkit-font-suavizado: ninguno;

}

+0

Sí, esto funciona para mí. ¡Gracias! – Echelon

16

he visto esto en sí mismo Safari también con una aplicación web que estoy armando. Después de un día o de rascarse la cabeza, y la deconstrucción de la CSS utilizada por la Guía del usuario del iPad, he encontrado que

-webkit-transform: translate3d(0,0,0); 

hace el truco. Buscar en Google parece que esto permite la aceleración del hardware de la renderización, lo que lleva a resultados mucho más consistentes en las orientaciones vertical y horizontal.

+0

¡Un gran hallazgo! Gracias. – canisbos

+0

Muchas gracias, esto mejora enormemente la representación en fuentes picto/icon. –

2

La razón de esto es que solo un modo puede hacer uso de los subpíxeles en la pantalla, porque están dispuestos en una cierta dirección. El otro modo mostrará la fuente con anti-aliasing greyscaled y aparecerá ligeramente diferente.

Cuestiones relacionadas