B4A

domingo, noviembre 19, 2006

Notable mejora en el rendering de fonts TTF coloreados


Para quienes usan fonts Truetype de colores (como en Shout+TTF fonts o como en la imagen de Small-Land), Andreas Raab liberó un fix para un problema existente con el cacheo de esos colores.

Este fix acelera el rendering del texto coloreado con TTF notablemente.
Diego Gómez Deck tomó el fix, lo ordenó dentro de un changeset para evitar algunos problemas que existían con el fix original y se puede descargar e instalar en imágenes 3.8 y 3.9.

Abriendo un transcript ANTES de instalar el .cs se puede evaluar el siguiente código:

| text morph form|
text :=
('Hello World\' withCRs asText addAttribute: TextColor red),
('Hello World\' withCRs asText addAttribute: TextColor green),
('Hello World\' withCRs asText addAttribute: TextColor blue).
text addAttribute: (TextFontReference toFont:
((TextStyle named: 'BitstreamVeraSans') fontOfSize: 24)).
morph := TextMorph new contentsAsIs: text.
form := Form extent: morph fullBounds extent depth: 32.
Transcript cr; show: (
[1 to: 1000 do:[:i| morph fullDrawOn: form getCanvas]] timeToRun
).

el cual puede evaluarse nuevamente luego de instalar el .cs para notar las diferencias.

En mi imagen 3.8 donde desarrollo habitualmente, cargada de cosas, los valores en milisegundos fueron:

Antes: 10963
Después: 714

El thread completo, de donde bajar el .cs es este.