unicode-org / last-resort-font Goto Github PK
View Code? Open in Web Editor NEWLast Resort Font
License: SIL Open Font License 1.1
Last Resort Font
License: SIL Open Font License 1.1
(This is not a font bug per se, but I run into this using openSUSE Tumbleweed, so it might be good to document for future)
After installing last-resort-font on my system I noticed that Chrome and many other apps (except xterm for some reason) started to render ๐ณ (U+1D433) character using last-resort-font, this can be confirmed with:
sisyphus ~ > fc-list ':charset=1D433'
/usr/share/fonts/truetype/STIXGeneral-Regular.otf: STIXGeneral:style=Regular
/usr/share/fonts/winfonts/cambria.ttc: Cambria:style=Regular
/usr/share/fonts/truetype/LastResortHE-Regular.ttf: Last Resort High\-Efficiency:style=Regular <--- HERE
/usr/share/fonts/truetype/STIXGeneral-Bold.otf: STIXGeneral:style=Bold
/usr/share/fonts/truetype/DejaVuSerifCondensed-Bold.ttf: DejaVu Serif,DejaVu Serif Condensed:style=CondensedBold,Bold
/usr/share/fonts/truetype/DejaVuSerif-Bold.ttf: DejaVu Serif:style=Bold
/usr/share/fonts/winfonts/cambria.ttc: Cambria Math:style=Regular
/usr/share/fonts/truetype/DejaVuMathTeXGyre.ttf: DejaVu Math TeX Gyre:style=Regular
So, it's matching last-resort-font before looking up other fonts where the glyph actually exists. I looked up in the fontconfig documentation, but I couldn't find a way to decrease a font's priority to be last. If you have any ideas, it'd be appreciated.
The Last Resort High-Efficiency font has an invalid Platform/Encoding/Format combination. According to the OpenType specification "Encoding ID 6 should only be used in conjunction with 'cmap' subtable format 13; and subtable format 13 should only be used under platform ID 0 and encoding ID 6". However the LRHE font has subtable format 13 under Encoding ID 10 (Unicode Full Repertoire) and Platform ID 3 (Windows). The font should be changed to have subtable format 13 under Encoding ID 6 (Unicode Full Repertoire) and Platform ID 0 (Unicode).
The Last Resort font has two cmap tables: a Format 4 subtable (Encoding ID 1 and Platform ID 3) with zero characters defined; and a Format 10 subtable (Encoding ID 10 and Platform ID 3) covering 1,114,112 characters.
When tested with Notepad under Windows 10, characters in the BMP are displayed with the notdef glyph because Windows uses the Format 4 subtable for the BMP. All characters outside the BMP are displayed correctly because the Format 10 subtable is used for supra-BMP characters. See attached screenshot for Notepad displaying two BMP characters and one character each from Planes 1-3, using the Last Resort font.
Possible solutions would be to A) remove the empty Format 4 subtable; or B) make the Format 4 subtable functional for all characters in the BMP.
NB This issue should also affect the High-Efficiency font.
Where can we get the upstream sources and scripts to re-/build the font if we want to make our own updates available before official releases?
---------------------------
Windows Font Viewer
---------------------------
The requested file LastResort-Regular.ttf is not a valid font file.
---------------------------
OK
---------------------------
The meta table dlng and slng fields each give a comma-separated list of language tags (ca,cs,cy,da,de,en,es,fi,fr,hr,hu,id,is,it,lt,ms,mt,nb,nl,nn,pl,pt,ro,sk,sv,tr,vi for dlng; and 240 language tags for slng). However the specification for the meta table states that ScriptLangTag values use a modification of the BCP 47 syntax: a script subtag is mandatory and other subtags are optional. It further states that "it is anticipated that most tags used in 'dlng' and 'slng' metadata declarations will consist only of a script subtag".
Therefore, the lists of language tags should be changed to use lists of script tags (e.g. Latn, Cyrl, Hani, etc.).
The glyph for Number Forms shows U+00BE VULGAR FRACTION THREE QUARTERS, which is in a different block.
Nice prompt update, but it would be nice to have the font files included in the versioned archive, or have individually versioned font files in the releases, so that processes that depend on version changes will download the updated font files, rather than using the previously cached files, which turned out to be 15.000
, after packaging and installing! ;^>
A few of the last resort glyphs have incorrect values for the range of the block they represent:
lastresortmathoperatorssup: should be 2A00..2AFF, but shows 2AA0..2AFF.
lastresortcjkextf: should be 2CEB0..2EBEF, but shows 2B820..2CEAF.
lastresortvariationselectorsa: should be E0100..E01EF, but shows E0110..E01FF.
Are the glyphs of the Last Resort Font modifiable in Font Forge?
Random suggestion: U+30EDE (๐ฐป) is a well-known glyph for its "most" stroke count and complexity, and also the name for a type of noodles in China, and most people that are in the field already knows the location of this character. Using U+30EDE as the representative glyph is a good indication for CJK Ext-G, which can be taken from Source Han Serif.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.