Fwd: UAX#50 conformance: Is it possible to update existing fonts without causing damage to existing non-CSS applications?

---------- Forwarded message ---------
From: Nat McCully <nmccully@adobe.com>
Date: 2019年12月10日(火) 1:14
Subject: Re: UAX#50 conformance: Is it possible to update existing fonts
without causing damage to existing non-CSS applications?
To: fantasai <fantasai@inkedblade.net>, Taro Yamamoto <tyamamot@adobe.com>,
MURATA Makoto <eb2m-mrt@asahi-net.or.jp>
Cc: Florian Rivoal <florian@rivoal.net>


Apologies for Outlook being unable to quote people inline... The plain text
email world collides with whatever world Outlook inhabits -- I don't know
how I am supposed to write in threads with this, but Adobe prevents any
other tool from accessing our mail server. So:

@fantasai <fantasai@inkedblade.net> There are, it appears, numerous cases
that are like the arrows. In fact, this issue will prevent me from using
UAX#50 in our apps in the simple way I had hoped, because I assumed that
UAX#50 was formed with the same assumptions about full-width CJK typography
being upright in vertical and the "rotation" being handled in the glyph
substitution phase as just one more variation for vertical. I guess an
Unicode purist like Eric M would disagree and here we are with his result.
Arrows being rotated but otherwise the same glyph as horizontal should no
longer use 'vert' and in so doing you gain some efficiency in not having to
check font script when cutting vertical or rotated runs of these characters.
Adding rotation and different run boundaries and turning off 'vert' is way
more complex than simply swapping my table out for the UAX#50 table.
Sadness. My table was J-centric; UAX#50 tries to be universal, I guess.

--Nat

------------------------------
*From:* fantasai <fantasai@inkedblade.net>
*Sent:* Monday, December 9, 2019 7:37
*To:* Taro Yamamoto <tyamamot@adobe.com>; MURATA Makoto <
eb2m-mrt@asahi-net.or.jp>; Nat McCully <nmccully@adobe.com>
*Cc:* Florian Rivoal <florian@rivoal.net>
*Subject:* Re: UAX#50 conformance: Is it possible to update existing fonts
without causing damage to existing non-CSS applications?

On 12/9/19 3:14 AM, Taro Yamamoto wrote:
>
> One example that was discussed at the last meeting with Murata--san:
U+2192 RIGHTWARDS ARROW, whose vertical posture is defined to be 'R' by
UAX50, but has been traditionally been included in the 'vert' table of
fonts based on the Adobe-Japan1-x Character Collection (glyph set) since
the late 1980s. According to Nat, InDesign assumes its vertical posture to
be 'Tr', so InDesign lets the 'vert' do the "pseudo-rotation" for the
corresponding glyph without any scruple.  There are very many similar
cases, where glyphs corresponding to the characters whose vertical postures
are defined to be 'R' by UAX50 are assumed to have the 'Tr' vertical
posture, and as a result, our fonts have them in the 'vert' features to do
the "pseudo-rotation". At this point, my guess may be wrong, but I have the
idea that without the assumption, if these characters had not been assumed
to have the 'R' vertical posture, as expected by UAX50 today, it would have
not been possible for anyone to guarantee that the glyphs corresponding to
these characters could have been rotated correctly at the very center of
the Japanese EM square type body. There is the distinction here between
Japanese glyphs and Western glyphs to be detected beforehand.

Ah, this is the tricky case. A 'vert' feature which implements Tr-style
rotated alternate instead of upright-style alternate for some glyph would
be
incompatible with the intention of UAX50/CSSWM for that glyph.

I wonder if there are many examples other than arrows?

> However, as far as the 'vert' features are concerned, which are in font,
for any font developers, it is self-explanatory whether a font is for
Japanese or Western languages/scripts. So, by having the 'vert' features do
the "pseudo-rotation", applications seem to have been free from the
responsibility of rotating Japanese glyphs at the center of their EM square
type bodies. Whatever type of glyphs, Japanese full-width characters or
Western proportional glyphs, as far as applications position them correctly
by rotating and shifting them, understanding how they should be positioned
in Japanese vertical lines, it is not necessary to have those 'R' glyphs in
the 'vert' features, but it is possible to have applications really rotate
and shift them. But I guess it was impossible to assume all applications
really could do it in those days. But is it possible to guarantee that they
do it rightly at the end of 2019?

We think there are definitely glyphs for which a rotated presentation needs
an
alternate glyph rather than a simple rotation by the application. But this
is
why the 'vrtr' feature was added to OpenType. For such characters, it is
intended for the application to rotate them, and the font to provide a
'vrtr'
alternate for vertical presentation of a rotated glyph.

The CSS Writing Modes system uses the combination of this 'vrtr' feature,
the
application’s ability to set any character upright or not upright
(defaulting
to UAX50), and the 'vert' feature as intended for truly upright typesetting
of
each character (excepting those such as brackets for which an upright
presentation would be nonsensical, which are marked as Tr in UAX50). This
should give authors, applications, and fonts together the ability to
typeset
text perfectly in each case,

The concern for compatibility of fonts with such a system then seems to be
whether fonts have 'vert' alternates that rotate characters which, in a
fully
upright typesetting style, could be upright. For example, the case of
arrows
you discuss above. In such cases, there is no way to set that glyph upright
except maybe to disable the 'vert' feature.

~fantasai



-- 
Regards,
Makoto

Received on Thursday, 12 December 2019 04:50:22 UTC