Giter Club home page Giter Club logo

agl-aglfn's Introduction

AGL & AGLFN

This open source project is intended to be coupled with the AGL Specification, and provides the resources that it references.

Contents

This project includes the following three resources:

  • AGL (glyphlist.txt)
  • AGLFN (aglfn.txt)
  • ITC Zapf Dingbats Glyph List (zapfdingbats.txt)

Overview

AGL (Adobe Glyph List) simply provides mappings from glyph names to Unicode scalar values.

AGLFN (Adobe Glyph List For New Fonts) provides a list of base glyph names that are recommended for new fonts, which are compatible with the AGL (Adobe Glyph List) Specification, and which should be used as described in Section 6 of that document. AGLFN comprises the set of glyph names from AGL that map via the AGL Specification rules to the semantically correct UV (Unicode Value). For example, 'Asmall' is omitted because AGL maps this glyph name to the PUA (Private Use Area) value U+F761, rather than to the UV that maps from the glyph name 'A'. Also omitted is 'ffi', because AGL maps this to the Alphabetic Presentation Forms value U+FB03, rather than decomposing it into the following sequence of three UVs: U+0066, U+0066, and U+0069. The name 'arrowvertex' has been omitted because this glyph now has a real UV, and AGL is now incorrect in mapping it to the PUA value U+F8E6. If you do not find an appropriate name for your glyph in this list, then please refer to Section 6 of the AGL Specification.

The ITC Zapf Dingbats Glyph List is similar to AGL in that it simply provides mappings from glyph names to Unicode scalar values, but only for glyphs in the ITC Zapf Dingbats font.

Format

Each record in AGL (glyphlist.txt) and the ITC Zapf Dingbats Glyph List (zapfdingbats.txt) is comprised of two semicolon-delimited fields, described as follows:

  • Glyph name—upper/lowercase letters and digits
  • Unicode scalar value—four uppercase hexadecimal digits

The AGL and ITC Zapf Dingbats Glyph List records are sorted by glyph name in increasing ASCII order, lines starting with '#' are comments, and blank lines should be ignored.

Each record in AGLFN (aglfn.txt) is comprised of three semicolon-delimited fields, described as follows:

  • Standard UV or CUS (Corporate Use Subarea) UV—four uppercase hexadecimal digits
  • Glyph name—upper/lowercase letters and digits
  • Character names: Unicode character names for standard UVs, and descriptive names for CUS UVs—uppercase letters, hyphen, and space

The AGLFN records are sorted by glyph name in increasing ASCII order, entries with the same glyph name are sorted in decreasing priority order, the UVs and Unicode character names are provided for convenience, lines starting with '#' are comments, and blank lines should be ignored.

More Information

Important details about glyph naming and interpreting glyph names can be found in the AGL Specification, which is an open specification.

The tools and documentation that comprise AFDKO (Adobe Font Development Kit for OpenType) are helpful for those who develop OpenType fonts. For general and format-related questions about OpenType fonts, the OpenType Specification is the single best source.

Getting Involved

Suggest changes by creating a new issue.

agl-aglfn's People

Contributors

cjchapman avatar josh-hadley avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.