Python in FontLab Studio
FontLab Studio 5 for Mac OS X
FontLab Studio 5 and AsiaFont Studio 5 on Mac OS X works with the
native "Framework" Python that is pre-installed in Mac OS X. Mac
OS X 10.4 Tiger comes with pre-installed Python 2.3 and
this is the version that FontLab Studio works with. Mac
OS X 10.5 Leopard comes with pre-installed Python
2.3 and 2.5, but unfortunately, FontLab
Studio is currently hard-wired to work with version 2.3 only.
Please check our note about
Python compatibility in Intel-based Mac OS X. Visit python.org to download additional modules and documentation.
Even though you can install Python 2.4 or 2.5 on Mac OS X 10.4
and 10.5 already has Python 2.5 pre-installed, FontLab Studio will not
work with it,
at least not officially.
Inofficially, it is not possible to get FontLab Studio to work with Python 2.4 or 2.5, but this means "hiding" Python 2.3 from the system, which may influence the stability of your system (though we have not seen any actual proof that something bad would happen). Below are some instructions how to do this, but this is not supported and not recommended by Fontlab Ltd.:
- Log in as administrator into Mac OS X.
- Download and install the latest Python 2.4 or 2.5 release for Mac OS X.
- Open the Terminal application.
- Enter the following lines:
cd /System/Library/Frameworks/Python.framework/Versions
sudo mv 2.3 2.3.bak
(enter your administrator password)
- If you installed Python 2.4, enter
sudo ln -s /Library/Frameworks/Python.framework/Versions/2.4 2.3
If you installed Python 2.5 or you're on Mac OS X 10.5 Leopard, enter
sudo ln -s /Library/Frameworks/Python.framework/Versions/2.5 2.3
FontLab Studio 5 for Windows
FontLab Studio 5 and AsiaFont Studio 5 for Windows
work with Python 2.4. You need to download and install it on Windows. Python 2.2 and 2.3 will also work. Python 2.5 will not work.
- Download the latest Python 2.4 release for
Windows.
- Run the setup.
- We also recommend that you download and install the Python for Windows extensions. Remember to pick the version that matches your Python version.
- Visit python.org to download additional modules and documentation.
Python in FontLab 4.6
FontLab 4.6 for Mac OS 9 and Mac OS X
FontLab 4.6 for Mac and AsiaFont Studio 4 for mac work with MacPython-OS9 2.3.x (not 2.2 or 2.4!). Then do not work with the
"framework" version of Python that is included in Mac OS X but require a
separate installation of the so-called Carbon Python (MacPython). Therefore, all users of FontLab 4.6 for Mac OS 9 and for Mac OS X must install MacPython-OS9
2.3.x.
1. Download MacPython-OS9
2.3.3
2. Perform the following steps to complete the installation:
Close FontLab. Install Python by starting the installer. Ignore error
messages such as "Installation on Mac OS X will probably fail."
Go to YourHardDisk/Application/Python 2.3.3 and run ConfigurePythonCarbon.
Start FontLab. Python should work now but if it isn't, perform additional steps
as follows.
Go to YourHardDisk/Library and select the folder called CFMSupport. Select
File / Get Info so the CFMSupport Info windows opens. Go to Ownership &
Permissions and change Owner from System to your log in. Close this window.
Remember to change this permission back to System later when this session
ends.
Go to YourHardDisk/Application/Python 2.3.3 and run ConfigurePythonCarbon.
Change the permissions back to System and start FontLab.
FontLab 4.6 for Windows
FontLab 4.6 for Windows and AsiaFont Studio 4 for Windows work with Python 2.2.x (not 2.3 or 2.4!): Download and install Python
2.2.3 for Windows.
|
A more detailed explanation of how FontLab applications use the
Python macro language and some examples of scripts by users.
The Python macro language is a really powerful tool that can save you loads
of time in performing tedious tasks. Need to add a bevel to all the characters
in your font? A Python macro can do it in a flash. Want to rename all your fonts
to add your foundry intials? Do the whole library in seconds with a macro. Got
an idea for a new FontLab tool? Write it in Python and add it to the FontLab
menus.
The
Unofficial FontLab/Python API Reference documents the FontLab/Python
scripting API
FontLab
Scripting described at Wikibooks
FontLab
Macro Setup at Wikibooks
RoboFab extensive documentation
Useful Python-based software
- RoboFab by
Tal Leming, Erik van Blokland and Just van Rossum
Python library
that provides an independent font development environment that integrates
with FontLab Studio and can be used for font, glyph and metrics manipulation. Free for
Mac OS X and Windows. RoboFab
requires NumPy (Mac
installer on PythonMac)
and FontTools TTX.
- FontTools TTX by
Just van Rossum
“Low-level” OpenType table editing package written
purely in Python. Free for Mac OS X and Windows.
- Adobe
FDK for OpenType (AFDKO) by Adobe Systems
Set of high-quality
OpenType conversion, editing, production and quality assurance tools, partly
written in Python and integrated with FontLab Studio. Free for
Mac OS X and Windows.
- FontQA by
FontShop International
Font quality assurance framework and test
suite for FontLab Studio written in Python and published by FontShop International,
allows performing consistency checks across fonts within a font
family. Free for Mac OS X and Windows.
- Autopsy by
Yanone
A FontLab Studio add-on written in Python for analyzing
design consistency across multiple fonts. It visualizes a selection of letters
side by side and puts it into a PDF for visual comparison. If
visual comparison isn’t enough for you, it dissects what’s there and what’s
not and puts that into simple graphs. Free for non-commercial use,
licenses 69–399 EUR, for Mac
OS X and Windows. Requires ReportLab.
- FeatureProof by
Tal Leming
FeatureProof is an application for testing built on
top of Compositor that
makes it easy for type designers to test OpenType Layout features in
fonts. Free for Mac
OS X.
- Font Remix Tools by
Just Another Foundry
A set of plug-ins for FontLab Studio written in Python
that allow scaling of glyphs without affecting the stroke weight.Free
for non-commercial use, licenses 99–396 EUR, for Mac
OS X and Windows.
- Superpolator by
Erik van Blokland
Professional typedesign is complex enough as
it is: Superpolator breaks free from the conceptual constraints of Multiple
Master: work with any number of axes, insert masters where you need them
and define, generate all the weights you want. Glyph specific
axes, split locations, intermediates, powerful extrapolation. Licenses 250 EUR and
up, for Mac
OS X. Requires RoboFab.
- PixelBrush by
Gustavo Ferreira
A simple tool to draw outline pixel fonts in
FontLab Studio. Free for
Mac OS X and Windows.
- Compositor by
Tal Leming
An OpenType Layout engine. Free for Mac OS X
and Windows.
- feaTools by
Tal Leming
A collection of tools for working with OpenType Layout
feature definition source files in AFDKO .fea format. Free for
Mac OS X and Windows.
- Scripts and tools by
Tal Leming
A collection of useful FontLab Studio scripts and Python
tools. Free for
Mac OS X and Windows.
- Scripts by
Typo.cz
Two sets of macros for FontLab Studio by Typo.cz (Filip
Blazek), written in Python. The OpenType features set automates generating
of special OpenType functions. OpenType kerning simplifies the
setting of kerning pairs for accented characters. Both sets contain
some handy scripts for relabelling of glyphs and for control
of the process. The macros are will available in the end of 2008.
- Scripts by
Ben Kiel
Scripts for Accents will aid in building accents, placing
anchors, and removing anchors. Scripts for generating test fonts will
make a copy of the font you are working on, remove its overlaps
and decompose its characters, then give you the choice of font
type to generate. Scripts for dealing with Guidelines show how
one can add and remove guidelines to a vfb file. Scripts for
working with font metrics make it easy to copy the sidebearing
values of one vfb file to another. Scripts for MultipleMaster
VFBs will quickly generate any number
of instances of a MM face, either as font files or vfb files
(or both). Free for Mac OS X and Windows, optional
donation.
- SVH
Helper Script for RoboFab by Brook Elgie
Python script that integrates
SVN version control with RoboFab. Free for
Mac OS X and Windows.
- RemoteTCP for RoboFab and FontLab by
William Lamberta
RemoteTCP is a cross-platform implementation
of the RoboFab Remote package that allows FontLab to respond to calls from
other applications over a network connection.
- Python Imaging
Library by Pythonware
Essential image processing package for
Python. Free for
Mac OS X and Windows. Mac installer on PythonMac.
Windows installer on Pythonware.
- FontLab
on Steroids macros by Adam Twardoch
Script for FontLab Studio written
in Python, includes Rename glyphs by scheme macro. Free for Mac OS X and
Windows.
- Macro by Roger Dawkins
Macro to create
an outline version of a font: development, script.
- Macro by Vince Fitter
Some nice little macros for
special effects: Windows
version,
Macintosh version
Python Background
Python is an interpreted, interactive, object-oriented programming language.
It is often compared to Tcl, Perl, Scheme or Java. Originally developed by
Guido van Rossum in 1990 it is an open source language and has gained popularity
rapidly. For this reason we chose it as the scripting language for FontLab
4 macros.
www.python.org is
the official Python website
Python Books and Resources:
Macro Programming, FontLab Studio manual
Python Programming for the Absolute Beginner
FontLab
Scripting discussion list
The Python Bookstore
|