googlefonts / nanoemoji

A wee tool to build color fonts.
Apache License 2.0
239 stars 22 forks source link

Supports mixed compilation of single-color and multi-color icons #261

Open yisibl opened 3 years ago

yisibl commented 3 years ago

When the glyf_colr_0 format is used, the COLR/CPAL table will be generated if the icon has only one color.

In iconfont, there are a lot of mixed single-color and multi-color font projets, and users hope that monochromatic colors can still be changed with CSS color property. I hope that a flag can be added so that the single-color icon does not generate a COLR table.

The following is an example of me manually merging ttx files:

Demo: https://mo.m.taobao.com/union/color-font-test

https://user-images.githubusercontent.com/2784308/111959706-c6ca5180-8b29-11eb-9687-443abb61d325.mp4

rsheeter commented 3 years ago

May be further complicated by https://bugs.chromium.org/p/chromium/issues/detail?id=944093#c7.

yisibl commented 3 years ago

@rsheeter I submitted a similar issue: https://bugs.chromium.org/p/chromium/issues/detail?id=1190710

This is also supported in Windows to modify the color. We cannot prevent people from using the mixed COLR table to create icons, so I think Chrome will eventually need to fix this problem.

For Material Icons Two Tone, do you have any good solutions to support changing colors? Are different font files packaged for different fonts?

yisibl commented 3 years ago

https://github.com/thx/iconfont-plus/issues/2038

yisibl commented 3 years ago

We already support the hybrid generation of COLRv1 + SVG table in https://github.com/googlefonts/nanoemoji/pull/359, so can we also consider COLRv1 + COLRv0 now? And when there is only COLRv0, the COLR table is not generated.

yisibl commented 3 years ago

May be further complicated by https://bugs.chromium.org/p/chromium/issues/detail?id=944093#c7.

The Chrome issue will be fixed in here: https://chromium-review.googlesource.com/c/chromium/src/+/3263829

@jfkthame I found the same problem with Firefox, could you please take a look?

jfkthame commented 3 years ago

May be further complicated by https://bugs.chromium.org/p/chromium/issues/detail?id=944093#c7.

The Chrome issue will be fixed in here: https://chromium-review.googlesource.com/c/chromium/src/+/3263829

@jfkthame I found the same problem with Firefox, could you please take a look?

This sounds like https://bugzilla.mozilla.org/show_bug.cgi?id=1738589 (also an earlier report at https://bugzilla.mozilla.org/show_bug.cgi?id=1520157), which I hope we'll get fixed sometime soon.

yisibl commented 2 years ago

May be further complicated by https://bugs.chromium.org/p/chromium/issues/detail?id=944093#c7.

Hi, rsheeter

Chrome has fixed this issue, now we'll have to wait for nanoemoji to finish the rest. I recently received another user feedback about not being able to change the color. See: https://www.yuque.com/yisi/iconfont/colr-font#comment-22231181

yisibl commented 1 year ago

Hi @rsheeter Have you had time to look at this? Or can you guide me on how to modify it so I can try to submit a PR.

rsheeter commented 1 year ago

I missed the UA bugs got fixed, ty for the ping and my apologies, I've been swamped by other stuff. Let me try to chat with @anthrotype about this, probably next week, and we'll see what we can do.

rsheeter commented 1 year ago

@yisibl if you happen to have spare cycles it would be helpful to have a PR with test(s) that show the input, desired output, and that we get it wrong right now, makes doing the enhancement a bit faster.

yisibl commented 1 year ago

No problem, I'll try to see how to write a test case.