Menu

FOray / Development: Recent posts

Language, Country, and Script

There is an inherent mismatch between the way most natural language tasks use language, country, and script, and the way that they are used in a font. For tasks like hyphenation and spell-check, the most important piece of information is the language. If more precision is needed, the country is established, to distinguish between, for example, "color" in the United States, and "colour" in Great Britain -- the same word, just spelled differently. In some cases, a script might also be needed to distinguish between two writing systems in the same country. Vietnam, for example, uses the Latn script and the Hani script. Again, the words are the same, but the spelling is using an entirely different set of characters.... read more

Posted by Victor Mote 2017-01-03 Labels: language country script font hyphenation locale icu4j

Ligatures and Hyphenation

For the last month or so, I have been working on adding support for OpenType ligatures to FOray. Because the project has been dormant for a while, I also have been doing a lot of cleanup. The script, language, and country codes have been changed from enums in aXSL to interfaces in axsl-common, and bean classes in foray-common. The should make aXSL much more lightweight, while still providing the type-safety that I wanted for describing these concepts. Plus it allows for greater flexibility if someone needs to add one of these items for any reason. I also did a lot of rearranging of class names in foray-font and axsl-font. Parsing of font information has been changed to more of a static factory concept, which still allows for access to private members, but removes the need for anything but the factory/parsing method to know anything about where the data is coming from. We may want to move all parsing to separate classes some day -- that would involve either creating a lot of setters or making some pretty complex constructors.... read more

Posted by Victor Mote 2017-01-02 Labels: font ligature hyphenation dictionary OpenType