Graphic Design Stack Exchange is a question and answer site for Graphic Design professionals, students, and enthusiasts. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I am using two fonts, STSong and STHeiti. I want to know if these fonts support ligatures, such as f + i becoming one character, or at least having two characters nearby.

  • I made a ConTeXt document, but some words, such as "off" and "fish" are appearing like "of f" and "f ish". It is possible that my code is in error though.
  • I also tried viewing the fonts in OpenOffice.org, but this seems an unreliable way to check, because OpenOffice.org seems to use font-substitution whenever I type a Unicode character with a font that does not contain that character.

Is there a way to determine if these fonts contain ligatures?

share|improve this question
1  
You might want to try tex.stackexchange.com – plainclothes Aug 9 '13 at 23:10

I did this in Word, but you should be able to do it in anything that has a glyph or symbol viewer.

Ligatures are unique characters that have to be created, so just view the glyphs and see if the characters are there! If so, then ligatures are supported for that font. Most fonts will have at least 'fi' and 'fl' glyphs; 'ff', 'ffi', and 'ffl' are common as well.

OpenType support can be dicey from program to program, though, so if the ligatures are there but not working in the software you're using, the issue might be there instead of with the font.

Symbols palette

share|improve this answer
    
I don’t think that’s quite right… Many fonts have fi and li glyphs. But many of those (in particular older) fonts don’t have the OpenType tables saying that f+i should be replaced by the fi glyph. Software that takes the OpenType spec literally won’t generate a ligature automatically. Now some software will do this replacement all the same, since so many legacy fonts lack the tables. ConTeXt, that Village is asking about, wont. – mabartibin Jun 24 at 8:00

For ligatures to be supported in an OpenType font, two things need to be there: the actual ligature glyphs (which you can check by scrolling through the glyph table with a symbol picker etc.) and a glyph substitution table that tells software to replace a sequence of characters by a ligature.

There’s a handy piece of software called DTL OTMaster Light (free, runs on Windows, Mac, Linux) that allows you to look at these things. Open the font file, then in the Tools menu, find the GPOS/GSUB table viewer. For “Layout Table” choose GSUB (GPOS is for kerning), for “Feature” pick “Standard Ligatures.” In a font like e.g. Minion, there’ll be a lot to see there!

Things to learn on the way: which ligatures are available in OpenType may depend on 1. the script (latin, cyrillic, etc.) 2. the language, 3. what “features” are selected, i.e. only standard ones, or all manner of fancy ligatures, and 4. the same glyph substitution mechanism is used in some fonts to replace standard digits by old-style, lower case by small caps, etc.

Oh: if your font has fi and fl, but no GSUB table, you can use a tool like FontForge to add them. Has a really weird user interface but lots of documentation online, so you’ll survive.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.