<html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"></head><body style="overflow-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;">My main concern with producing multiple glyphs is that it has substantial API and tooling implications.<br id="lineBreakAtBeginningOfMessage"><div><br><blockquote type="cite"><div>On Dec 12, 2023, at 10:57 AM, Behdad Esfahbod <behdad@behdad.org> wrote:</div><br class="Apple-interchange-newline"><div><meta charset="UTF-8"><div dir="ltr" style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 13px; font-style: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;"><div dir="ltr">On Tue, Dec 12, 2023 at 11:51 AM John Hudson <<a href="mailto:john@tiro.ca">john@tiro.ca</a>> wrote:<br></div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin: 0px 0px 0px 0.8ex; border-left-width: 1px; border-left-style: solid; border-left-color: rgb(204, 204, 204); padding-left: 1ex;"><u></u><div><p>I proposed that to the OT developer list a long while ago, and recall that Kamal had a similar idea, initially in terms of handling Unicode decompositions such that fonts would not need precomposed diacritics. At the time, Microsoft thought it unlikely to get traction, as it implied significant engineering for unclear benefit, but perhaps the benefit is clearer now? As you say, being able to decompose a Unicode character to an arbitrary sequence of glyphs is very useful for Arabic, and by-passes the need to handle such decompositions in GSUB prior to other shaping.<span class="Apple-converted-space"> </span><br></p><p>I suppose the question is whether there is a significant benefit to doing this outside of GSUB? — or, indeed, if there might be a reason it would be preferable in GSUB?</p><p>The inconsistency in dot handling in different joining forms of some Arabic characters means that one doesn’t always want to up-front decompose some characters to base grapheme and combining dots, but those could be excluded from the cmap and passed to GSUB form decomposition in the joining form features. But that being the case, why not do it all in GSUB?</p></div></blockquote><div>Thanks John. The main benefit in my opinion is not allocating a gid to every precomposed Unicode character, most of them Latin. The Arabic use-case is extra.</div><div> </div><div>b</div><div><br></div><div><br></div><blockquote class="gmail_quote" style="margin: 0px 0px 0px 0.8ex; border-left-width: 1px; border-left-style: solid; border-left-color: rgb(204, 204, 204); padding-left: 1ex;"><div><p>JH<br></p><p><br></p><div>On 2023-12-12 9:04 am, Behdad Esfahbod wrote:<br></div><blockquote type="cite"><div dir="ltr">Thank you everyone for the very productive meeting.<div><br></div><div>I like to also bring this issue up. If there is interest, I can work on it. I wrote in my reply to Peter earlier:</div><div><br></div><div><div><i>This reminds me of another idea we discussed in, I think, 2019, from Monotype to introduce a `cmap` subtable that would map individual characters to sequences of glyphs. Then the pre-composed Unicode characters wouldn't need to have their own glyphs. Back then we dropped the idea for backwards-compat reasons. But maybe we can pick it up now?</i></div><span style="color: rgb(80, 0, 80);"><div><br></div><div>This is very useful for Arabic as well...</div><div><br></div></span><div><div dir="ltr" class="gmail_signature">behdad<br><a href="http://behdad.org/" target="_blank">http://behdad.org/</a></div></div></div></div><br><fieldset></fieldset><pre>_______________________________________________
mpeg-otspec mailing list
<a href="mailto:mpeg-otspec@lists.aau.at" target="_blank">mpeg-otspec@lists.aau.at</a>
<a href="https://lists.aau.at/mailman/listinfo/mpeg-otspec" target="_blank">https://lists.aau.at/mailman/listinfo/mpeg-otspec</a>
</pre></blockquote><pre cols="72">--
John Hudson
Tiro Typeworks Ltd <a href="http://www.tiro.com/" target="_blank">www.tiro.com</a>
Tiro Typeworks is physically located on islands
in the Salish Sea, on the traditional territory
of the Snuneymuxw and Penelakut First Nations.
__________
EMAIL HOUR
In the interests of productivity, I am only dealing
with email towards the end of the day, typically
between 4PM and 5PM. If you need to contact me more
urgently, please use other means.</pre></div>_______________________________________________<br>mpeg-otspec mailing list<br><a href="mailto:mpeg-otspec@lists.aau.at" target="_blank">mpeg-otspec@lists.aau.at</a><br><a href="https://lists.aau.at/mailman/listinfo/mpeg-otspec" rel="noreferrer" target="_blank">https://lists.aau.at/mailman/listinfo/mpeg-otspec</a><br></blockquote></div></div><span style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 13px; font-style: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none; float: none; display: inline !important;">_______________________________________________</span><br style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 13px; font-style: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;"><span style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 13px; font-style: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none; float: none; display: inline !important;">mpeg-otspec mailing list</span><br style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 13px; font-style: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;"><a href="mailto:mpeg-otspec@lists.aau.at" style="font-family: Helvetica; font-size: 13px; font-style: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;">mpeg-otspec@lists.aau.at</a><br style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 13px; font-style: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;"><a href="https://lists.aau.at/mailman/listinfo/mpeg-otspec" style="font-family: Helvetica; font-size: 13px; font-style: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;">https://lists.aau.at/mailman/listinfo/mpeg-otspec</a></div></blockquote></div><br></body></html>