openframeworks / openframeworks/openFrameworks

suggestion for ofTrueTypeFont for new characters introduced by ISO 8859-15

Open
#3,002 3 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

core feature section-typography
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

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. 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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.