Skip to main content
This is a pre-production deployment of Warehouse. Changes made here affect the production instance of PyPI (pypi.python.org).
Help us improve Python packaging - Donate today!

font analysis tool for determining character/glyph support

Project Description

pyfontaine analyses fonts for their language and character/glyph-set support.

It has a straightforward pythonic set definition format:

Additional definitions are downloaded from the Extensis, font-config and Unicode websites during installation, and can be updated without reinstalling.

Adding your own definitions is easy. All files in the internals directory are auto-detected, so just add definition files there.

Installation

First, install Python and the pip python package manager. This is installed by default with homebrew python, so, install homebrew, then install pip as follows:

brew install python;

On Mac OS X, install the pyicu dependency as follows:

CFLAGS=-I/usr/local/opt/icu4c/include LDFLAGS=-L/usr/local/opt/icu4c/lib pip install pyicu;

Install the latest release easily with pip:

sudo pip install fontaine

To install the latest development version:

sudo pip install https://github.com/davelab6/pyfontaine/archive/master.zip;

Usage

Given a list of space separated font filenames, it returns a report with some general metadata and a language support analysis:

pyfontaine font.ttf;

Given a list of space separated unicode characters, or unicode values, it returns a list of character sets that include that character:

pyfontaine 0x0061;
pyfontaine ğ ø ∂;

Similarly you can find out if a font supports specific characters by also giving the filename:

pyfontaine U+C480 U+C481 font.ttf;

To output font reports in various formats:

pyfontaine --xml font.ttf;
pyfontaine --json font.ttf;
pyfontaine --csv font.ttf;
pyfontaine --wiki font.ttf;

The –wiki format produces a MediaWiki table (example)

To only show character sets from different collections:

pyfontaine --collections all font.ttf; # default
pyfontaine --collections pyfontaine font.ttf;
pyfontaine --collections uniblocks font.ttf;
pyfontaine --collections extensis font.ttf;
pyfontaine --collections fontconfig font.ttf;
pyfontaine --collections cldr font.ttf;
pyfontaine --collections subsets font.ttf;

To only show specific character sets:

pyfontaine --set africaan,adobe_latin_3 font.ttf;

To print a list of all the missing unicode values from each set:

pyfontaine --missing --set adobe_latin_3 font.ttf;

Update collection data

You can update remote collections data when you are online:

pyfontaine –update-data 1;

Python Module

It has a python module, fontaine

Contributing

Your contributions under the GPLv3 are welcome!

pyfontaine is a python reimplementation of Fontaine by Ed Trager, and has been made by by Vitaly Volkov, Dave Crossland and Mikhail Kashkin.

Thanks

We would like to thank some upstream projects that make pyfontaine even more useful:

Dependencies

Release History

Release History

This version
History Node

1.3.10

History Node

1.3.9

History Node

1.3.7

History Node

1.3.6

History Node

1.3.5

History Node

1.3.4

History Node

1.3.3

History Node

1.3.2

History Node

1.3.0

History Node

1.2.2

History Node

1.2.1

History Node

1.2.0b

History Node

1.1.5

History Node

1.1.4

History Node

1.0.9

History Node

1.0.8

History Node

1.0.7

History Node

1.0.6

Download Files

Download Files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

File Name & Checksum SHA256 Checksum Help Version File Type Upload Date
fontaine-1.3.10.tar.gz (5.0 MB) Copy SHA256 Checksum SHA256 Source Jan 5, 2016

Supported By

WebFaction WebFaction Technical Writing Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Rackspace Rackspace Cloud Servers DreamHost DreamHost Log Hosting