Philippe Verdy via Unicode
unicode at unicode.org
Tue Jul 18 06:39:34 CDT 2017
2017-07-17 14:25 GMT+02:00 Christoph Päper via Unicode <unicode at unicode.org>
> Finally, should smart fonts make U+0020 exactly as wide as an em when
> between two emojis?
Really I don't think so, Emojis are not specific to East-Asian use even if
a significant part of them come from there. These bsaic spaces are separate
clusters separating separate emoji sequences, they are not part themselves
of the sequences: why would it be specific to spaces and why wouldn't you
apply this logic to all other Basic latin characters to render their full
width version between emojis, if even before and after them ? It would
simply break things everywhere.
In reality, the emojis are always composed separately, they are isolated
symbols in a stream of normal text in any script (with weak direction
coming from their context of occurence, but not mirrorable in BiDi
Then people will want to separate them by spaces... or not if used in
South-East Asian scripts, or will surround them with standard punctuation,
or will join them with prefixes/suffixes from words such as "I ❤ed it !".
If one wants specific metrics for spaces around emojis to separate them,
Unicode already has plenty of them usable from normal scripts, U+0020 is
not the only choice but it should still use standard font metrics in the
scripts the font was designed for. Usually emojis fonts are very specific
(to support colors) except in symbol scripts. Remember also that many
emojis often have two standardized presentations: one for use as normal
symbols with simple monochromatic glyphs (where colors may be replaced by
patterns similated by strokes, and slight modification of the internal
metrics to make them still recognizable), another which is more colorful
and elaborated and that could be more compact.
Emojis also don't necessarily have to be drawn in an em-square, they are
variable-width like in normal scripts. The monospaced rendering is just a
font design style: if you have such font (e.g. for rendering on a text
console), your basic spaces and other basic Latin will use half-em width
everywhere, or fullwidth everywhere: you don't need any "smart font"
feature using contextual rendering rules, and in fact these rules will be
undesirable in most cases of use of monospaced fonts.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Unicode