- From: Garret Rieger <grieger@google.com>
- Date: Thu, 24 Apr 2025 18:50:46 -0600
- To: "w3c-webfonts-wg (public-webfonts-wg@w3.org)" <public-webfonts-wg@w3.org>
- Message-ID: <CAM=OCWZcnyUiPopQ6mdx+ULi9f55oGLbV7J8L9E=-PxfrH8CGw@mail.gmail.com>
Previously we had a wasm based demo of IFT that was built on a prototype (non spec compliant) version of the technology. I've just upgraded that demo to use the latest encoder <https://github.com/w3c/ift-encoder> and client <https://github.com/googlefonts/fontations/tree/main/incremental-font-transfer> implementations, which are both compliant with the latest specification draft. You can find the updated demo here: https://garretrieger.github.io/ift-demo/ Notable changes: - Most importantly the demo is now compliant with the latest IFT specification draft <https://w3c.github.io/IFT/Overview.html>. - For the text samples using Roboto, the previous demo used a table keyed only encoding. Now it's using a mixed (glyph and table keyed) encoding. The glyph keyed segmentation was generated using the experimental closure based segmenter <https://github.com/w3c/ift-encoder/blob/main/docs/experimental/closure_glyph_segmentation.md>. Performance (in terms of # of bytes transferred) is looking good so far. - For the CJK fonts the demo extends both CFF2 (Noto Serif SC) and glyf (Noto Sans SC) fonts. The prior version did not include any CFF fonts. - The previous demo included an example of layout feature extension, that's been removed for now as the encoder does not yet fully support that use case yet. I'll be getting that added back in once I get support finished in the encoder. I'm planning to make some more improvements to this over time including: - Utilize codepoint frequency data when generating the glyph segmentations for Roboto. - Improvements to the encodings (such as using table keyed patch preload lists). - General performance improvements. - Demonstration of layout feature extension. Lastly, if you're interested in more details about how the IFT encodings for the font are created, the demo repository contains all of the code necessary to generate the IFT font encodings: https://github.com/garretrieger/ift-demo/blob/main/Makefile
Received on Friday, 25 April 2025 00:51:11 UTC