Yes, 100%. Very good point, I was definitely over-simplifying the
measurement challenge. Thanks David!
On Tue, May 30, 2023, 5:47 p.m. David Baron <dba...@chromium.org> wrote:
I was trying to avoid being too specific about what would be
worth measuring both because I haven't taken the time to think
through all the details, and because other folks on this thread
have a lot of domain expertise that can help figure out what
makes sense. I just wanted to point out that if you are
measuring stuff, it's worth considering that it may be useful to
measure something about usage of system versus downloaded fonts
in order to understand variation between machines (which I agree
is at least mostly variation between platforms).
-David
On Tue, May 30, 2023 at 11:44 AM Dominik Röttsches
<dr...@google.com> wrote:
Hi David and Rick,
It's a shame to me to be holding back interop on the case
of fonts having the superscript or subscript glyphs out
of fear for the case where they don't. Perhaps we can
treat the case of font-variant-position being used with
fonts that lack the glyphs as a site bug that we can work
to address independently? Personally, as long as Safari
and Chrome behave the same here, I'm skeptical that the
lack of synthesis would turn into a non-trivial problem
in practice.
I think expectations as to what should the browser do vs.
what is reasonably expected of site owners in terms of font
selection and visual delivery is on a spectrum (font fallback
being a similar case).
In the case of using font-variant-position, I tend to agree
with Rick: I'd consider using font-variant-position without a
suitable font is a site bug. Safari seems to be of the same
opinion by shipping font-variant-position without synthesis.
If we were to ship without synthesis, would it be
practical to have a UseCounter which measures how often
we see font-variant-position used with a font that lacks
the glyphs? This would tell us how important the bug is.
If it remains really rare, then IMHO we've probably
already wasted more energy worrying about it than it's
worth. If it becomes more common over time then I think
we have a variety of options, chiefly implementing
synthesis, but also raising awareness with devtools
features, UKM-based site-specific outreach, and possibly
even interventions of some form (like using a fallback
font?).
It's difficult to measure the visual end result accurately:
Only at shaping time we know exactly which font binary is
used. This in HarfBuzzShaper and we can determine whether the
`sups` and `subs` OpenType features
<https://learn.microsoft.com/en-us/typography/opentype/spec/features_pt#subs>
are
requested (we would need extra code for determining whether
these features were requested through font-variant-position:
or font-feature-settings). Then we can determine whether the
font has such a feature in its shaping tables. The difficulty
is: We reach the shaping code lots of times for every
relayout or web font arriving. So initially, we may shape
with a fallback font before the web font arrives, which
affects the measurement result. Measuring in shaping is not
synchronized with a stable layout stage or something like a
"done" state of the page. So we could get to an
approximation, but in shaping we can't currently determine
what's the last state that "stayed" and was perceived by the
user.
David wrote:
So if it makes sense to add use counters to understand
the compatibility implications here, I think it may be
worth adding what we would need to understand the
breakdown of how many sites are using this in a way that
(a) is interoperable across browsers/machines versus (b)
is broken in some browsers and working on others versus
(c) is broken on some machines and working on other
machines, even using the same browser. I suspect this
would mean something like measuring how often we see
font-variant-position used with a system font versus a
downloadable font. (This might also need to be recorded
along with the data on whether the font has or lacks the
superscript/subscript glyphs, because the intersection of
the two might be interesting.)
I do agree this feature is most meaningful in combination
with web fonts. Or even more specifically: Selecting
font-variant-position needs to be carefully synced with the
selected font and making sure the exact font has high chances
of getting loaded.
Do I understand correctly you suggest measuring
font-variant-position usage with system fonts vs. web fonts
because of the differences between machines? Or did you also
mean platforms?
The system font set used from the web is relatively stable
between machines, meaning: Windows fonts are usually similar
across machines (when it comes to those selected from the
web), so are Mac fonts.
In any event, I did a quick check:
Mac: Helvetica, Times, and Courier New on Mac, and as far as
I can tell, neither has a specific superscript or subscript
OpenType or AAT font feature.
Windows: Out of Arial, Courier, Times, Verdana only Verdana
has subscript glyphs (no superscript), the others do not have
such a feature.
Bottom line:
I am with Rick on shipping this and considering a lack of
glyph support up a site bug.
Depending on feedback from API owners, if needed, we can
measure an approximation of selection of the feature vs.
support in the font.
As is, this measurement may read too high (see above:
initial shaping with fallback font), but potentially we
can filter that measurement and only report selection of
the feature vs. support in a successfully loaded
web-font. Development of such a measurement takes from 2
days to 9 days, depending on complexity (very basic, no
distinction of font-feature-settings and
font-variant-position, no distinction of system fonts to
complex: distinguish font-feature-settings from
font-variant-position, distinguish system fonts, web fonts).
Dominik
On Wed, May 24, 2023 at 5:41 PM Rick Byers
<rby...@chromium.org> wrote:
It's a shame to me to be holding back interop on the case
of fonts having the superscript or subscript glyphs out
of fear for the case where they don't. Perhaps we can
treat the case of font-variant-position being used with
fonts that lack the glyphs as a site bug that we can work
to address independently? Personally, as long as Safari
and Chrome behave the same here, I'm skeptical that the
lack of synthesis would turn into a non-trivial problem
in practice.
If we were to ship without synthesis, would it be
practical to have a UseCounter which measures how often
we see font-variant-position used with a font that lacks
the glyphs? This would tell us how important the bug is.
If it remains really rare, then IMHO we've probably
already wasted more energy worrying about it than it's
worth. If it becomes more common over time then I think
we have a variety of options, chiefly implementing
synthesis, but also raising awareness with devtools
features, UKM-based site-specific outreach, and possibly
even interventions of some form (like using a fallback
font?).
Rick
On Fri, Feb 24, 2023 at 9:22 AM David Baron
<dba...@chromium.org> wrote:
On Fri, Feb 24, 2023 at 5:49 AM Yoav Weiss
<yoavwe...@chromium.org> wrote:
On Fri, Feb 24, 2023 at 11:27 AM Manuel Rego
Casasnovas <r...@igalia.com> wrote:
There's a CSSWG issue about this topic in
particular:
https://github.com/w3c/csswg-drafts/issues/7441
Is this something that can be put on the agenda
for the CSSWG to discuss?
I added this to the group's (long) agenda backlog.
(Also, a few other relevant CSSWG issues I found were
w3c/csswg-drafts#1888
<https://github.com/w3c/csswg-drafts/issues/1888>,
w3c/csswg-drafts#2796
<https://github.com/w3c/csswg-drafts/issues/2796>,
w3c/csswg-drafts#5225
<https://github.com/w3c/csswg-drafts/issues/5225>,
w3c/csswg-drafts#5518
<https://github.com/w3c/csswg-drafts/issues/5518>,
and also some minutes from July 2020
<https://lists.w3.org/Archives/Public/www-style/2020Aug/0006.html#:~:text=vertical%2Dalign%3A%20super%20and%20font%20metrics>
and from September 2020
<https://lists.w3.org/Archives/Public/www-style/2020Sep/0023.html#:~:text=should%20we%20add%20the%20super%20and%20subscript>.)
One other point that I missed yesterday is that one
of the key reasons that these new properties can't be
used for the default rendering of
<sup>/<sub> elements is that they don't support
/nested/ subscript/superscript. One of the goals of
the 2011 discussion I cited above was to solve that
issue in a reasonable way. All of the current ways of
doing typographically correct super/subscripts only
support a single level of super/subscript, and not
nesting. This works for the majority of use cases,
but not all.
-David
--
You received this message because you are subscribed
to the Google Groups "blink-dev" group.
To unsubscribe from this group and stop receiving
emails from it, send an email to
blink-dev+unsubscr...@chromium.org.
To view this discussion on the web visit
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAG0MU3ht%3DrZwCtQoUWJXR4avCaY2TvAa9NMiYAfMsdan94wzVw%40mail.gmail.com
<https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAG0MU3ht%3DrZwCtQoUWJXR4avCaY2TvAa9NMiYAfMsdan94wzVw%40mail.gmail.com?utm_medium=email&utm_source=footer>.
--
You received this message because you are subscribed to
the Google Groups "blink-dev" group.
To unsubscribe from this group and stop receiving emails
from it, send an email to blink-dev+unsubscr...@chromium.org.
To view this discussion on the web visit
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAFUtAY9fMAG16L3_KweN4FnnSnVsfevxHyH2qfdN1B42ef1Xmg%40mail.gmail.com
<https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAFUtAY9fMAG16L3_KweN4FnnSnVsfevxHyH2qfdN1B42ef1Xmg%40mail.gmail.com?utm_medium=email&utm_source=footer>.
--
You received this message because you are subscribed to the Google
Groups "blink-dev" group.
To unsubscribe from this group and stop receiving emails from it,
send an email to blink-dev+unsubscr...@chromium.org.
To view this discussion on the web visit
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAFUtAY-SQGewKUSrL0MGTXh_L3DU_RSfah2t8SrS8K3FPaeR2g%40mail.gmail.com
<https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAFUtAY-SQGewKUSrL0MGTXh_L3DU_RSfah2t8SrS8K3FPaeR2g%40mail.gmail.com?utm_medium=email&utm_source=footer>.