<div>
Hi Behdad and Grigori,
</div><div><br></div><div>Thanks for all the answers.</div><div><br></div><blockquote type="cite" style="border-left-style:solid;border-width:1px;margin-left:0px;padding-left:10px;"><span><blockquote type="cite"><div>I finally managed to get OT layouting with HarfBuzz to work in JavaScript via</div><div>Emscripten. It's awesome! :) There are still some open questions though. Can</div></blockquote><div><br></div><div>Fantastic! Got any demos?</div></span></blockquote><div>I've attached a small sample of what my thing produces (it's called from Flash here---I know, I know, it's a <i>bit</i> overcomplicated. :). Sources I can't show for now, but will try to do so ASAP.</div><div><br></div><blockquote type="cite" style="border-left-style:solid;border-width:1px;margin-left:0px;padding-left:10px;"><span><div></div><blockquote type="cite"><div><div> * *How should I find out if a glyph returned by hb_shape() is a ligature?*</div></div></blockquote><div>Now, having the cluster, and the number of cursor positions in the cluster,</div><div>you can go ahead and decide where to draw the cursor. If the ligature-carets</div><div>are available, you can try using them. Otherwise, just divide the width of</div><div>the cluster evenly by the number of the cursor positions.</div></span></blockquote><div>For some reason I didn't find hb_ot_layout_get_ligature_carets() previously. That will solve all my problems, thanks. Thanks for the hint, Grigori.</div><div><br></div><blockquote type="cite" style="border-left-style:solid;border-width:1px;margin-left:0px;padding-left:10px;"><span><blockquote type="cite"><div><div>* *Can HarfBuzz handle the Apple "kern," "morx" etc. tables?* If not, is</div></div></blockquote><blockquote type="cite"><div> it safe to use FontForge to convert these fonts to use OpenType's</div><div> GPOS/GSUB etc.? This is not very</div><div> encouraging: <a href="http://fontforge.org/gposgsub.html">http://fontforge.org/gposgsub.html</a></div></blockquote><div><br></div><div>No 'morx'. And as you noted, the conversion is not straightforward.</div></span></blockquote><div>I see. So, no Zapfino then?</div><div><br></div><div>On a more serious note, is support for "morx" planned? Is the lack of support due to some fundamental incompatibility with HarfBuzz architecture, or is it because nobody did the work yet? In case of the latter, would you accept contributions if my company made this? (Not sure if we really would, but I'm interested in the possibilities.)</div><div> </div><blockquote type="cite" style="border-left-style:solid;border-width:1px;margin-left:0px;padding-left:10px;"><span><blockquote type="cite"><div><div>* *Which features are turned on by default?* I can see that ligatures and</div><div> kerning are turned on for my simple Latin text, and I can successfully</div><div> turn them off by supplying features "-kern" and "-liga," but I'm still</div><div> curious what the defaults are.</div></div></blockquote><div>See <a href="http://hb-ot-shape.cc">hb-ot-shape.cc</a>.</div></span></blockquote><div>Got it, thanks. </div><div><br></div><blockquote type="cite" style="border-left-style:solid;border-width:1px;margin-left:0px;padding-left:10px;"><span><blockquote type="cite"><div><div>* *When kerning is applied, I get funny x_advances.* This might be an</div><div> error on my side, but currently when a pair of glyphs is kerned, the</div><div> first character get's an x_advance that seems to have something like</div><div> "42949017" subtracted from it. Because ligature substitution works</div><div> perfectly, I assume GSUB table parsing works fine, so I don't see why</div><div> GPOS would fail. Any pointers here?</div></div></blockquote><div><br></div><div>Can't help without seeing the code / font. Did you try the code in C first BTW?</div><div></div></span></blockquote><div>Not yet, but I will, and report back with my findings.</div><div><br></div><div><br></div><div>Thanks again,</div><div>Lorant</div>