RE: CSS3 Web Fonts issue with ‘block on download’

Adam Twardoch wrote:
> 
> It's an interesting idea, but in reality, it's very unlikely to happen.
> Especially with non-Latin languages, one needs rather complex metrics
> information: different glyphs are used for the same characters
> depending
> on their positions or neighboring glyphs, and the position adjustments
> are typically more than just "kerning" (i.e. you usually have
> adjustments in both x and y). Overall, a substantial portion of the
> font
> would have to be offloaded into a separate file.
> 
> But if browser makers were to support EOT, the EOT spec developers
> could
> make sure that there is a recommended order for OpenType table ordering
> within EOT, so that the metric and shaping tables would be "served"
> earlier, while the glyph information would be served later. An obvious
> advantage of EOT over desktop font formats such as TTF/OTF is that EOT
> is web-specific, so it could be tuned towards specific use on the web.
> 

Adam, this is a brilliant idea. A significant part of EOT is the font-specific lossless MTX compression, and the reason MTX compression is on average 30% better than generic zip is because the compressor optimizes the source data, and separates and groups different types of data in a font into three separate data blocks (http://www.w3.org/Submission/2008/SUBM-MTX-20080305/). The first block contains all the metrics and layout data, and can be decompressed and used for page processing while other two blocks containing glyph information are downloaded. Not only the fonts will be downloaded twice as fast because you have less data to download, you can process the page layout while the significant chunk of glyph data is being downloaded.

Regards,
Vladimir

> Adam
> 
> --
> 
> Adam Twardoch
> | Language Typography Unicode Fonts OpenType
> | twardoch.com | silesian.com | fontlab.net
> 
> The illegal we do immediately.
> The unconstitutional takes a little longer.
> (Henry Kissinger)

Received on Thursday, 7 May 2009 17:49:05 UTC