I think I'm getting to grips with OpenType coding - I just birthed my first contextual one-to-many substitution, and am as proud as you'd expect - but I'm still puzzled by one thing and unsure about another.

The puzzle is that when I define-and-run a lookup, the layout engine goes back to the start of the glyph run, as I'd expect. But when I call a lookup, it doesn't, at least in FontLab. Is that just how it is?

The uncertainty is over whether all kinds of lookup types are allowed in all features, or whether it's better to stick to the lookup types specified for features at the Microsoft OT spec site. I know FontLab is liberal, but are all apps?

Thanks very much for any help!

Former Typophile moderator Zara Vasquez-Evens has written an interesting article on Medium (, prompted by the recent petition for a better user interface for accessing OpenType features in design software (

A few selected quotes:

Martin Silvertant's picture

Mapping fists

So, as a sort of oddity I'm adding fists/manicules to my latest typeface and I figured arrows would be handy as well. Now, I have them mapped with the appropriate unicodes as far as possible. To make them more accessible I figured I would create a stylistic set so you can type >> to make an arrow. However, when I add the code and I click on compile OpenType program it tells me it has to abort because of errors.

I must be doing something wrong. How do you usually map these kind of symbols to OT functions, or don't you?

feature ss07 { # Stylistic Set 7
sub > > by arrowright;
sub < < by arrowleft;
sub > > > by blackmaniculeright;
sub < < < by blackmaniculeleft;
} ss07;

I'm making a big multilingual sans serif and by default, the "a" and the "g" are double storey. I do include the single story versions available by "salt" because this feature works virtually everywhere, where there is Opentype).

However, I've heard that the Germans mostly use the single story g. I've searched pictures of various street signs in Germany and Austria and I haven't found any double story g's.

Would it be ok to include 'locl' feature for German language to substitute only the g (while leaving the "a" double story)? I do understand that the single story g has its roots in Fraktur. And is it a German-only preference or the neighbour languages like Dutch, Danish, Swedish, etc. look more natural with a single storey g?

Deus Lux's picture

Help with OpenType fractions

If I generate an OTF font, and I have a glyph created for onehalf, will "1 slash 2" automatically be replaced by onehalf, or do I need to build a feature for it?

Tried building a feature, but an "aborting because of errors" error:

feature frac {
lookup frac1 {
sub one slash 2 by onehalf;
} frac1;
lookup frac1;
} frac;

Also, what is the easiest way to code for all "(number) slash (number)" to change into nut fractions? I'd like this to work up into the thousands (333/1028 for example). Creating a "sub" line of code for every possible fraction is obviously impractical.

Hi everybody! I am happy to announce the release of Cavatina: an experimental font for musical notation. It is the result of two years of work in design and programming.

I'm wondering if it's possible to script any advanced features. Primarily I'm looking to solve a specific problem, but more generally I'm curious if more can be done with OT scripting than the standard "sub" script to replace one glyph with an other.

I'm tired of people over-hyphens so I wanted to script a fix for that, so in the standard ligatures I put the following code:
sub comma hyphen by comma_endash;

This replaces the comma followed by a hyphen with a ligature glyph where I have a comma followed by a line which is in between the hyphen and the en dash in length, which is more appropriate for denoting prices ($50,–).

To preface, this is my first post to the forum and I've done a fair amount of digging on the issue, but haven't found any solution to my question. Apologies in advance if it has been answered somewhere else. And I must say, that the community here has been extremely invaluable so far!

I have designed Titling Alternates (labeled titling in OpenType Classes) for the Uppercase (upcs in OpenType Classes) glyphs in my font.

For this, my feature is as follows:

feature titl { sub @upcs by @titling; } titl;

Wallington Typeface

Hey guys! allow me to introduce my first release font.

Wallington is a decorative-serif font embodying vintage and elegant curves with functional structure. Inspired by Old English cultures and their descendants between the mid-5th century and the mid-12th Century. Made up of two styles, Wallington Regular that consists of 491 glyphs and Wallington Small Caps with 365 glyphs. All glyphs are divided into several OpenType features such as Ligature, Contextual Alternates, Old Style Numeric and some astonishing special characters that allows you to mix and match pairs of letters to fit your design.

Find out more :

I'm still working on an upcoming typeface called Melk Sans. I had major issues before which have been fixed, but today I noticed a minor issue and I'm puzzled as to what is the cause. I thought I would start this thread not only to ask for feedback on this issue, but to ask other questions as well.

I have default oldstyle figures and lining figures in a font. Due to its particular constructed nature, the glyphs for 6 and 8 are each identical in both styles. Can anyone think of a reason why I shouldn't leave out six.lnum and eight.lnum altogether, and omit their substitutions from the feature?

From the 1st of July till 21 September the latest edition (3.7) of DTL OTMaster will be offered with a 50% discount on the standard licensing price of €255.

Version 3.7 contains a lot of new functionality. From the import/export of Ideographic Variation Sequences (IVS) to the editing of feature parameters, and from an autohinter for edited or newly added glyphs to support for COLR+CPAL tables. One can read about all details in Karsten Lücke’s wonderful manual.

Hello, i am new to OT features and everything that that means. I need to know if the letter I just typed is the first letter of a 'paragraph', and by so, make a sustitution. Is that possible? Anyone can guide me on some docs I should strongly read?

thank you for your comments,

I want to use Stylistic Alternates on a program without OpenType support; namely, the alternate a and W/w on Raleway.
So I would like to make a copy of Raleway where the a and W/w are their alternates.
Is there a way to do it without expense, or is there another workaround solution?

I’d love to have same feature set in InDesign and Illustrator. I’d love to have the ease of use of Stylistic Sets, Character Variants, OT Dropcaps, Historical Forms, Historical Ligatures, OT Unicase and Nut Fractions. I’ve made this rather raw and quick mockup and I want to share it with you, fellow typophiles. I’m not affiliated with Adobe, these are just my thoughts on how to UI could work.

Maybe you have some other ideas? Firefox Nightly and some other browsers for example, supports almost all OT features by font-feature-settings: "xxxx";. So this support could be done. Maybe it’s possible to convince other software developers to support more OT features?

Hi there

I'm looking to add a simple alternate feature to a font. The font is purely uppercase but in the lowercase glyphs the font has one set of of alternates (also uppercase design).

We're not after any cutting edge attempts at randomisation, just a simple toggle effect, cycling through so every other time you type a letter the alternate displays. So typing "aaaa" will pull out "aAaA" from the glyphs.

I have looked through a lot of posts and articles and have found much useful information, but can't quite pin down the exact code. I understand it's quite simple and I'm almost there I think. I have created two classes - class1 (uppercase) and class2 (lowercase).

Now I believe I just need a simple piece of code to place here in the opentype panel:

feature xxxx {

I'm prototyping a cursive font where, at least on paper, any word with a "t" in it has the crossbar on the t extended to the left and right over letters as long as this fits; verticals in h, l, d, etc. will cut off the bar, so something like:

becomes something like:

I'm not entirely sure how to implement this, though. I was thinking of using many-to-many GSUB rules based on glyph classes, but no matter how I look at it, it turns into needing recursive GSUB behaviour...

1) t [low] ->[t with bar that continues right] [low with left-connecting overbar]

I made a font recently and it worked fine. Then I decided to do the Arabic unicode block, then the Arabic presentations A and B.
Now that I generated the font, Word crashes (but not InDesign) when I copy an arabic text (from Wikipedia) and paste it in a document using my font. I used UnicodeView and the Character Map to see the font and it all works, except when selecting the Arabic block (0600 - 06FF). CharMap crashes and Unicode View fills the screen with error messages saying some dll crashed and a memory segment was violated, blah blah blah.

We have a situation where our identity font is displaying terribly in Microsoft 2010 on Windows 7. The font looks great in InDesign and Illustrator. The font family is OpenType with PostScript outlines, aka CFF. This behavior is consistent for any OpenType font from Adobe, ie Myriad Pro or Adobe Garamond.

I am nearly certain that the Windows font rendering engine is optimized for TrueType outlines and renders PostScript outlines poorly. I also think that Adobe is using a different rendering engine for the Creative Suite applications, perhaps their own. I have not been able to find any specific documentation of these statements.

Does this ring true? Does anyone know of specific documentation of poor font rendering in Windows applications, especially MS Office?

Hi there,

I would like to ask if someone has a recipe for exploring a content of OpenType font. OK, I know, that the Glyph Panel in InDesign is pretty comprehensive — I can filter the Small Caps, I can filter Oldstyle Figures, I can filter Ornaments, or even Ligatures , but I am looking for some way to get a summary like this:

This font contains:
Extended Latin A & B
Discretionary Ligatures
Oldstyle Figures
Small Caps

Thank you.

Hi there,

I've created a font that has 3 character variations using calt (which works fine) and includes a set of 3 swash variations per character as well. The issue I'm having is I also want to include start and end swashes for select letters (a, e, i, o, r). I set up my code as such and it works perfectly fine in FontLab when I test it but when I try in Illustrator, only the start_swsh works. The end of the word remains normal.

feature swsh {
ignore sub @ALL @letter1' @ALL;
ignore sub @ALL @letter2' @ALL;
ignore sub @ALL @letter3' @ALL;
sub @letter1' @ALL by @start_swsh;
sub @letter2' @ALL by @start_swsh;
sub @letter3' @ALL by @start_swsh;
sub @ALL @letter1' by @end_swsh1;
sub @ALL @letter2' by @end_swsh1;
sub @ALL @letter3' by @end_swsh1;
sub @swsh1' by @swsh2;

denver's picture

Splitting dingbat glyph / OpenType

Hello, moved by the curiosity for the recent Flagsmith, I was just practising by playing around with OpenType on a dingbat font and I was trying to have a symbol (called "logo") splitting in its component by adding "-div" behind the name of the logo. So, for instance, "logo-div".
Given the logo "logo" and its four components:


I was looking at the Flagsmith and I therefore coded in the "liga" feature:

sub l' o g o hyphen d i v by logo.alt001;
sub logo.alt001 o' g o hyphen d i v by logo.alt002;
sub logo.alt001 logo.alt002 g' o hyphen d i v by logo.alt003;
sub logo.alt001 logo.alt002 logo.alt003 o' hyphen d i v by f_glyph;
sub logo.alt001 logo.alt002 logo.alt003 f_glyph hyphen' d i v by f_glyph;

Karsten Lücke updated the DTL OTMaster 3.7 manual. The PDF can be downloaded from here, and the printed edition can be purchased at DTL’s Bookshop, or directly at Lulu.


I have been selling a font family for over a year now, and just recently received a few emails from users saying they are getting a System Validation Error in Font Book, and are advised to not install this font. It's only happening to a couple people, but I want to fix the problem. The font has always worked perfectly for me so there isn't really a way for me to test whether I have solved the problem or not.

I've read some other forums on the subject... one solution was generating the font with hinting enabled. I checked my settings and this was already done.

Another suggested a solution that was on the user side:
1. Deleting the file ~/Library/Preferences/ and then log out/in
2. Install the 10.6.2 combo update

In the Font Starter Packs thread I read that Corel Draw comes bundled with a collection of quality fonts. It is written as well that "Newer versions are in Open Type TTF", but I could not find any information neither on the net nor in this forum which version this starts with.

So my question would simply be: Which is the oldest version of Corel Draw that I could buy for the good fonts alone? And just for clarification: How big is the quality difference between the older TTFs and the newer OpenType TTFs? And when and how would I notice it?

Syndicate content Syndicate content