Accepting contributions for Rust-based font indexing?
Behdad Esfahbod
behdad at behdad.org
Fri Sep 6 15:36:22 UTC 2024
Hi Dominik,
Thanks for the message. I believe this is an important and noble project to
consider upstream.
behdad
http://behdad.org/
On Fri, Sep 6, 2024 at 9:11 AM Dominik Röttsches <drott at chromium.org> wrote:
> Hi Akira & FontConfig community,
>
> Allow me to introduce myself, I am Dominik Röttsches, I work as an
> engineer on the Chrome rendering team.
>
> I am curious to hear your thoughts on accepting contributions to
> FontConfig that provide an alternative indexing code path and build
> configuration that does not require FreeType, but instead uses the
> Rust-based Fontations libraries [1] developed by Google Fonts.
>
> * Would you be ready to consider accepting such contributions?
> * Do you see dependencies other than indexing that require FreeType?
> (FreeType specific API functions [3] would need to be compiled out in
> the Fontations build).
>
> Background:
>
> In Chrome we're working on replacing FreeType with the Fontations set
> of Rust font libraries [1],[2]. Our main goals are improving Chrome's
> security and bringing Google Fonts and Chrome to a common code base
> for font processing, in order to accelerate future font format
> development work.
>
> Since we also depend on FontConfig in Chrome, we're looking into
> removing FontConfig's dependency on FreeType, and performing indexing
> using Fontations.
>
> Demo:
>
> Here's a proof of concept branch,
>
> https://gitlab.freedesktop.org/drott/fontconfig/-/commits/fontationsIndexing
> which indexes OpenType fonts using Fontations and supports only a
> limited set of indexed and added pattern elements.
>
> Building with Rust support and importing crates automatically requires
> meson 1.5 which can be locally installed for example using:
>
> $ python3 -m venv venv
> $ source venv/bin/activate
> $ python3 -m pip install meson
>
> Then the branch is built using:
> $ meson setup -Dfontations=enabled build
> $ ninja -C build/
> Then a simple test like the following works:
> $ build/fc-scan/fc-scan /usr/share/fonts
>
> I am looking forward to hearing from you,
>
> Dominik
>
> [1] https://github.com/googlefonts/fontations/
> [2] https://issues.chromium.org/40045339
> [3]
> https://fontconfig.pages.freedesktop.org/fontconfig/fontconfig-devel/x103.html#:~:text=FreeType%20specific%20functions
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/fontconfig/attachments/20240906/f2ed0868/attachment.htm>
More information about the Fontconfig
mailing list