Contactar con soporte

Respondemos por correo, normalmente en dos días.

Google reCAPTCHA revisa este envío frente a abusos; se transmiten datos a Google. El script se carga solo al abrir el formulario.

← Todas las entradas

Nuestra propia comprobación medía un 32 por ciento de más

Una comprobación escrita el 27 de agosto señaló 196 etiquetas de diagrama como demasiado anchas para la imagen en la que están. Arreglarlas costó un día. 103 nunca fueron demasiado anchas.

etiquetas señaladas como demasiado anchas primer aviso 196 medición y entidades corregidas 93 geometría movida 38 regla del borde corregida 3 cuatro etiquetas acortadas 0 5.093 etiquetas medidas en 77 entradas y once idiomas 103 de las 196 nunca fueron anchas — lo era la comprobación

Los puntos no son píxeles

La comprobación mide una etiqueta con GD contra un archivo de fuente real:

$bb = imagettfbbox(13, 0, $font, $text);

13 es el tamaño de letra de la hoja de estilos, en píxeles. imagettfbbox() toma su tamaño en puntos. Estaba midiendo 13pt, que son 17,3px, y cada etiqueta salía 96/72 — un tercio — más ancha.

La certeza llegó al preguntar a algo que dibuja texto de verdad. Un Chromium sin ventana puede cargar el diagrama real e informar del getComputedTextLength() de cada etiqueta. Con 13 los dos diferían en un tercio. Con 13 * 72 / 96, es decir 9,75, coinciden dentro del medio por ciento: 219 contra 219 píxeles en una etiqueta, 561 contra 559 en otra más larga.

La fuente estuvo bien todo el tiempo

La comprobación mide contra DejaVu Sans, y el comentario de encima se disculpaba por ello: DejaVu es más ancha que lo que ve la mayoría, así que el umbral se puso en el 92 por ciento.

Medida, la elección resulta exactamente correcta, pero por otro motivo que el declarado. De las fuentes que la pila de este sitio puede alcanzar, DejaVu es la más ancha. La misma frase: DejaVu 219 píxeles, Liberation 194, Cantarell 193, FreeSans 188. Quien lee en Windows o en un Mac tiene más sitio, nunca menos. La medida no es prudente, es el peor caso, y eso es lo que una comprobación debe medir.

Lo que quedó tras la cuenta

93 avisos sobrevivieron a la medición corregida. De ellos, 33 resultaron ser una regla y no un fallo: la comprobación guardaba diez unidades de margen respecto al borde y lo trataba como límite duro, así que un año a tres unidades del borde contaba como cortado. No había nada cortado. El límite es ahora el borde mismo, y la cuestión de la estrechez le toca al umbral del 95 por ciento.

Lo que quedó era real: etiquetas metiéndose bajo las barras, columnas demasiado estrechas para una frase en ruso, un pie de imagen cruzado sobre la caja vecina. Se arreglaron moviendo geometría, que es barato: la geometría es idéntica en las once filas de idioma, así que una sustitución literal arregla once. Cuatro etiquetas eran de verdad más largas que la imagen entera en un idioma cada una, y esas se acortaron.

Lo que se generaliza

Una comprobación equivocada en una sola dirección es peor que ninguna, porque genera trabajo. Dos tercios de un día se fueron en diagramas que estaban bien, y la única razón por la que se arregló el resto es que los avisos falsos estaban al lado de los verdaderos.

Lo que deshizo el empate no fue leer el código con más cuidado. Fue medir la medición contra algo independiente que dibuja texto real, y eso costó diez minutos, después de una semana confiando en la comprobación.

Publicidad