openframeworks / openframeworks/openFrameworks
suggestion for ofTrueTypeFont for new characters introduced by ISO 8859-15
Nobody has claimed this yet.
- Dominant language
- C++
- Stars
- 10.4k
- Forks
- 2.6k
- Avg merge
- 1d 21h
- Merged PRs (30d)
- 9
Description
" In 1999, ISO needed to make the Euro currency symbol available. There were also a few other characters that were desired. So ISO created ISO-8859-15, which is identical to ISO-8859-1 except for 8 characters." [source: http://www.i18nqa.com/debug/table-iso8859-1-vs-iso8859-15.html]
ofTrueTypeFont shows the characters as they were in ISO-8859-1. A fix was added by @kylemcdonald at Jun 15, 2013 to support the euro sign but the other 7 characters that were introduced can be supported the same way by using the following code in ofTrueTypeFont::loadFont.
if (glyph == 0xA4) glyph = 0x20AC; // Currency Sign -> Euro Sign
if (glyph == 0xA6) glyph = 0x0160; // Broken Bar -> Latin Capital Letter S With Caron
if (glyph == 0xA8) glyph = 0x0161; // Diaeresis -> Latin Small Letter S With Caron
if (glyph == 0xB4) glyph = 0x017D; // Acute Accent -> Latin Capital Letter Z With Caron
if (glyph == 0xB8) glyph = 0x017E; // Cedilla -> Latin Small Letter Z With Caron
if (glyph == 0xBC) glyph = 0x0152; // Vulgar Fraction One Quarter -> Latin Capital Ligature OE
if (glyph == 0xBD) glyph = 0x0153; // Vulgar Fraction One Half -> Latin Small Ligature OE
if (glyph == 0xBE) glyph = 0x0178; // Vulgar Fraction Three Quarters -> Latin Capital Letter Y With Diaeresis
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start in ofTrueTypeFont::loadFont, where the existing Euro glyph handling is described. Verify the seven additional ISO-8859-15 mappings listed in the issue and confirm that the corresponding characters render correctly.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- internationalization
- Issue type
- Bug
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100