<div dir="ltr"><div class="gmail_default" style="font-family:arial,helvetica,sans-serif;font-size:small;color:rgb(0,0,0)"><span style="font-family:arial,sans-serif;color:rgb(34,34,34)">On Sat, Nov 25, 2017 at 2:12 AM, tim Rowledge </span><span dir="ltr" style="font-family:arial,sans-serif;color:rgb(34,34,34)"><<a href="mailto:tim@rowledge.org" target="_blank">tim@rowledge.org</a>></span><span style="font-family:arial,sans-serif;color:rgb(34,34,34)"> wrote:</span><br></div><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">In a trunk image I get a char value 8217 - which is 16r2019, so correct - but it renders as a ?. So what we’re almost certainly seeing is a failure of the rendering process to find a font glyph with the relevant characters included. Which, given the large number of chars needed doesn’t surprise me a lot. The rendering does its little dance, finds that there is no glyph in the StrikeFont, delegates to the backup font (a Fixed FaceFont in the typical case) which has a little think and uses #displayErrorOn:length:at:<wbr>kern:baselineY: to display the ‘substitutionCharacter’ which is ascii 63, or ‘?’.<br></blockquote><div><br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif;font-size:small;color:rgb(0,0,0)">​Yep.​</div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif;font-size:small;color:rgb(0,0,0)"><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">The only way you’re likely to get the glyph you want would be to use Pango rendering via the UnicodePlugin (I think!).<br></blockquote><div><br></div><div></div></div></div><div class="gmail_extra"><div class="gmail_default" style="font-family:arial,helvetica,sans-serif;font-size:small;color:rgb(0,0,0)">​Not the only way. You just need to install a font with all the glyphs you need:</div><div class="gmail_default"><br></div><div class="gmail_default"><img src="cid:ii_15ff35fcaf8a40e0" alt="Inline image 2" style="margin-right: 0px;" width="224" height="118"><br></div><div class="gmail_default"><br></div><div class="gmail_default">As you can see, it does properly show the single quote as <span style="font-size:12.8px">2019 hex character, and supports cyrillic (and greek etc too).</span></div><div class="gmail_default"><br></div><div class="gmail_default">For this, I simply downloaded Fira Sans <a href="https://fonts.google.com/download?family=Fira%20Sans">https://fonts.google.com/download?family=Fira%20Sans</a> and dropped the unzipped FiraSans-Regular.ttf into Squeak, and chose "Install ttf style". Then in the Workspace, switch the font to Fira Sans.</div><div class="gmail_default"><br></div><div class="gmail_default">That said, our standard font renderer does not know how to deal with ligatures, RTL, etc, so if you want to support scripts like Arabic or Devanagari, you indeed need to use a plugin. Scratch uses UnicodePlugin for rendering, and Etoys on OLPC uses RomePlugin's pango paragraph renderer.</div><div class="gmail_default"><br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif;font-size:small;color:rgb(0,0,0)">- Bert -​</div><br></div></div>