[MPEG-OTSPEC] Future of OT-SVG (Re: Scheduling Zoom meeting to discuss new proposals and AHG recommendations)

Hin-Tak Leung htl10 at users.sourceforge.net
Tue Dec 5 08:38:36 CET 2023


 Dear mpsuzuki, and others,

Slightly beating a dead horse - most of the following info (with further details) is posted at the end of
https://bugs.chromium.org/p/chromium/issues/detail?id=306078

- Google folks did add OT-SVG support to skia for freetype/directwrite-based systems (i.e. linux/android and windosws) in m103, but left it off. You need to add one extra line of code at the start of your application to switch it on.

- Variants of chrome browser includes blink, which in-term includes skia. Blink has the ability to configure skia to use freetype on mac/windows instead of mac' coretext or windows directwrite to load fonts. This enables chrome on mac to load COLRv0 and CBDT/CBLC color fonts, and chrome on windows to load sbix color fonts, which the "native" font loader does not support.

Both of these are included in the next skia-python, m120 ( https://github.com/kyamagu/skia-python) - should be out as soon as I can tag it to build/publish. I can't confirm that the directwrite OT-SVG code works, but loading OT-SVG via freetype on windows does. Would appreciate some windows users having a try.

So maintainers/packagers of chrome variants - it should be just one additional line to support OT-SVG fonts on freetype-based system (i.e linux). On windows/directwrite, I can't confirm that single line works, but freetype is already used as fallback for COLRv0 and CBDT/CBLC on mac, and for sbix on windows, and it shouldn't be hard to do the same thing for OT-SVG for non-linux.

Regards,
Hin-Tak

P.S. Here is the top part of skia-python m120's release notes - yes, I created the pull so I wrote this myself:

New in m120:

* Rudimentary support (TextBlob::MakeFromShapedText) of text-shaping via
 upstream's libSkShaper module. Intially this was added to support
 emoji's with skin-tone modifiers (#195), but has the fortunate side-effect
 that now LTR languages (Arabic, Hebrew, Tibetan ...) work as desired in
 skia-python's drawing. Note libSkShaper is buggy on windows.
 ( https://issues.skia.org/issues/310510988 )

* Option to use freetype as fontmgr on non-linux (#213) - using
 skia.FontMgr.New_Custom_Empty() (upstream's SkFontMgr_New_Custom_Empty).
 This allows Windows/Mac users to use some font formats not supported by
 DirectWrite/CoreText (see #195); and also work around bug in CoreText (#138,
 https://issues.skia.org/310510989 ).

* OT-SVG font support is on by default now (#212, also see #195).

* Vulkan is enabled for Linux/Windows. Most of the APIs were in m87 (stubs?)
 but were made optional in m98+, and dependent on GPU backend compiled in.
 For Mac OS X users, upstream removed MoltenVK support in m83, and recommend
 using Metal backend (TODO).

     On Friday, 14 July 2023 at 02:43:44 BST, suzuki toshiya <mpsuzuki at hiroshima-u.ac.jp> wrote:  
 
 Dear Hin-Tak,

The Google Chrome m103, the web browser released on the late 2022-06
( https://chromium.googlesource.com/chromium/src/+log/103.0.5060.53..103.0.5060.66?pretty=fuller&n=10000 ),
supported OT-SVG?

According to https://bugs.chromium.org/p/chromium/issues/detail?id=306078 ,
a feature request for OT-SVG support was closed as "wont fix" on 2021.

My Google Chrome 114 reports "OpenType-SVG is not supported" on
https://pixelambacht.nl/chromacheck/ , it sounds consistent with the
status of this feature request.

However, although this feature request was closed, some people still post
some comments.

Regards,
mpsuzuki

On 2023/07/14 1:59, Hin-Tak Leung wrote:
> I see the future of OT-SVG as falling into half-half. There are technical/implementation details, but also overall strategies and decisions from stakeholders. One glaring(?) aspect is certainly that Google's  chrome team supports COLRv1 (not yet a OFF spec) in m98, earlier than OT-SVG (in 4th edition in 2019) in chrome m103...
  
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.aau.at/pipermail/mpeg-otspec/attachments/20231205/9eb0efaf/attachment-0001.html>


More information about the mpeg-otspec mailing list