<div dir="ltr"><div>This seems to be deferred for ever :)</div><div>With the latest HarfBuzz, I still have to fix-up glyph/metrics for the White_Spaces of GC=Cc|Zl|Zp to avoid the "missing glyph" boxes on rendering.</div><div><br></div>From <a href="http://www.unicode.org/faq/unsup_char.html#2">http://www.unicode.org/faq/unsup_char.html#2</a> :<div><font face="arial, helvetica, sans-serif">> <span style="color:rgb(96,96,96);font-size:medium;font-style:italic;font-weight:bold;background-color:rgb(250,250,250)">Q: Which characters should be displayed as a visible but blank space?</span></font></div><div><div class="gmail_extra"><font face="arial, helvetica, sans-serif">> <span style="color:rgb(0,0,0);font-size:medium;background-color:rgb(255,255,254)">A: This is the easy one: all the characters that have the White_Space property, also generically known as “whitespace characters”. This set includes SPACE, of course, but also such characters as the tab control character, NO-BREAK SPACE, LINE SEPARATOR, and so on. For the full list, see the White_Space values in </span><a href="http://www.unicode.org/Public/UCD/latest/ucd/PropList.txt" style="color:rgb(136,0,0);font-size:medium">PropList.txt</a><span style="color:rgb(0,0,0);font-size:medium;background-color:rgb(255,255,254)">.</span></font></div><div class="gmail_extra"><br></div><div class="gmail_extra">And from PropList.txt :</div><div class="gmail_extra"><div class="gmail_extra">0009..000D ; White_Space # Cc [5] <control-0009>..<control-000D></div><div class="gmail_extra">0020 ; White_Space # Zs SPACE</div><div class="gmail_extra">0085 ; White_Space # Cc <control-0085></div><div class="gmail_extra">00A0 ; White_Space # Zs NO-BREAK SPACE</div><div class="gmail_extra">1680 ; White_Space # Zs OGHAM SPACE MARK</div><div class="gmail_extra">2000..200A ; White_Space # Zs [11] EN QUAD..HAIR SPACE</div><div class="gmail_extra">2028 ; White_Space # Zl LINE SEPARATOR</div><div class="gmail_extra">2029 ; White_Space # Zp PARAGRAPH SEPARATOR</div><div class="gmail_extra">202F ; White_Space # Zs NARROW NO-BREAK SPACE</div><div class="gmail_extra">205F ; White_Space # Zs MEDIUM MATHEMATICAL SPACE</div><div class="gmail_extra">3000 ; White_Space # Zs IDEOGRAPHIC SPACE</div></div><div class="gmail_extra"><br></div><div class="gmail_extra"><br></div><div class="gmail_extra">My proposition is the following:</div><div class="gmail_extra">- The glyph for White_Spaces should be replaced with the glyph for U+0020 (except for U+0020 itself).<br></div><div class="gmail_extra"> This is a good first approximation which guarantees we would never get a box for White_Spaces.</div><div class="gmail_extra">- If there is no glyph for White_Space in the font (and we just replaced it with the glyph for U+0020), simply dup the metrics for U+0020 as well; otherwise believe the font provides a correct metrics.<br></div><div class="gmail_extra"> This doesn't care about ie. half-width spaces but also a good approximation for the most-common case.</div><div class="gmail_extra">This only applicable when no HB_BUFFER_FLAG_PRESERVE_DEFAULT_IGNORABLES has been set; otherwise do nothing.</div><div class="gmail_extra"><br clear="all"><div><div class="gmail_signature">Regards,<br>Konstantin</div></div>
<div class="gmail_extra"><br></div><br><div class="gmail_quote">2014-09-25 20:30 GMT+04:00 Behdad Esfahbod <span dir="ltr"><<a href="mailto:behdad@behdad.org" target="_blank">behdad@behdad.org</a>></span>:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">Thanks James and Jonathan for taking care of this on the CSS side.<br>
Working-group resolved to change this to display Cc characters<br>
(other than HT, LF, CR):<br>
<br>
<a href="http://log.csswg.org/irc.w3.org/css/2014-09-08/#e469835" target="_blank">http://log.csswg.org/irc.w3.org/css/2014-09-08/#e469835</a><br>
<span class="im"><br>
On 14-03-20 03:19 AM, James Clark wrote:<br>
> On Thu, Mar 20, 2014 at 6:04 AM, Behdad Esfahbod <<a href="mailto:behdad@behdad.org">behdad@behdad.org</a><br>
</span><div class=""><div class="h5">> <mailto:<a href="mailto:behdad@behdad.org">behdad@behdad.org</a>>> wrote:<br>
><br>
><br>
> Also, Unicode says GC=Cc should just render as boxed if not supported.<br>
><br>
><br>
> However, it also says that characters with the White_Space property true it<br>
> should be rendered as space. In addition to 0x9, 0xA and 0xD (which both CSS<br>
> and HTML treat as white space), these are 0xB (VT), 0xC (FF), and 0x85 (NEL).<br>
><br>
> The<br>
> reason we want them removed here is really an artifact of the HTML spec.<br>
><br>
><br>
> The requirement of ignoring all GC=Cc characters seems to be an artifact of<br>
> the CSS3 Text WD (<a href="http://www.w3.org/TR/css-text-3/#white-space-processing" target="_blank">http://www.w3.org/TR/css-text-3/#white-space-processing</a>),<br>
> which is not yet set in stone. Note that it's different from CSS2.1<br>
> (<a href="http://www.w3.org/TR/CSS2/text.html#ctrlchars" target="_blank">http://www.w3.org/TR/CSS2/text.html#ctrlchars</a>) which says that they render as<br>
> usual.<br>
><br>
> The CSS3 text behaviour seems like a bad idea to me, because<br>
><br>
> a) it conflicts with Unicode, and<br>
> b) legacy Windows encodings use C1 code points (in the range 0x80 - 0x9F) for<br>
> real characters; if a page using eg Windows-1252 encoding is mislabelled as<br>
> ISO-8859-1 (which can definitely happen) then all the code points in this<br>
> range would be silently be ignored rather than showing up as boxes.<br>
><br>
> WDYT?<br>
><br>
><br>
> I think the default should be to do what Unicode says. Also ask the CSS3 text<br>
> folks why they are proposing this handling of Cc.<br>
><br>
> James<br>
<br>
</div></div><div class=""><div class="h5">--<br>
behdad<br>
<a href="http://behdad.org/" target="_blank">http://behdad.org/</a><br>
_______________________________________________<br>
HarfBuzz mailing list<br>
<a href="mailto:HarfBuzz@lists.freedesktop.org">HarfBuzz@lists.freedesktop.org</a><br>
<a href="http://lists.freedesktop.org/mailman/listinfo/harfbuzz" target="_blank">http://lists.freedesktop.org/mailman/listinfo/harfbuzz</a><br>
</div></div></blockquote></div><br></div></div></div>