New to Typophile? Accounts are free, and easy to set up.
Adobe Opentype Univers has some dodgy Ligatures when set to metrics – see the "f T"
http://store2.adobe.com/cfusion/store/html/index.cfm?pid=930349&code=127...
The inverted quote marks seem to be off too. They look fine set to Optical kerning, but I wouldn't want to use that setting for text?
Any ideas what's going on? Think it has something to do with opentype?
Help greatly appreciated.
Stephen
29 Feb 2012 — 10:37am
f T isn't a ligature - it's simply a small word space. Perhaps the space is kerned towards the f and the T towards the space, maybe it's just an unfortunate character combination.
29 Feb 2012 — 11:04am
Also, worth noting that this sort of thing has nothing to do with OpenType per se. Adobe's OpenType version of Univers simply inherited its kerning from the PostScript Type 1 version (though possibly extended to cover more accented characters).
29 Feb 2012 — 11:23am
A Tale of Two Cities (classic problematic kerning setting).
Until three-character kerning is implemented in fonts, and supported in layout apps, you will have to manually apply “Optical” kerning.
Perhaps there is some way to code specific exceptions?
Actually, now that I think about it, it would be possible to solve this instance in an OpenType font:
sub f space T by fTspecial;
…where fTspecial is one glyph.
29 Feb 2012 — 11:28am
Or perhaps use a {calt} sub for the "f"? The "f.alt" may be the same one used to make a {calt} variation on the "fl, fh, fb,..." lig?
29 Feb 2012 — 11:49am
Done:
29 Feb 2012 — 2:38pm
f_space_T ligature is a bad idea. In justified text, this ‘word space’ would remain inflexible. Not a good thing. Maybe you were just being facetious, Nick.
29 Feb 2012 — 3:14pm
I might not be getting something here, but this doesn't need a fancy three-letter super kern if the 2 pairs are present... This kind of thing is precisely why I'd argue it's a Good Idea™ to kern things like f/space and space/T. And maybe Q/space and space/J, depending on the design. Overhanging glyph parts that optically diminish the space. Even if an f/space combination isn't met with yet another overhanging thing on the other side of the space (a not-too-unlikely worst-case scenario), it can still optically make the space appear smaller than it should be.
29 Feb 2012 — 3:18pm
I usually kern space to overhanging glyphs like space T and f space
1 Mar 2012 — 1:17am
Thanks for the replies… I have found a post-script version of Adobe Univers and it doesn't have any of these problems so I'm switching. It seems odd that the more up-to-date open type version has these problems?
1 Mar 2012 — 1:16pm
> I might not be getting something here, but this doesn't need a fancy three-letter super kern if the 2 pairs are present...
In many Adobe fonts, the two pairs are present, but the kerning pulls things closer together, not further apart. So three-letter kern combos are one solution. Or just not kerning against the space in the first place.
1 Mar 2012 — 3:42pm
What, they have negative kerning in pairs like f/space and space/T? Why?
2 Mar 2012 — 5:33am
"What, they have negative kerning in pairs like f/space and space/T? Why?"
The same reason you have any other kerning pairs,to adjust the optical space to "appear to be" more even.
2 Mar 2012 — 6:11am
Univers has space/T kerning -180, about 2/3 of a space (278), hence the problem. -20 or -30 is quite good.
BTW in John Hudson's Brill: f/space +25 and space/T -20, and looks like the best solution.
2 Mar 2012 — 7:16am
In Williams Caslon Text I used 'calt', as Chris notes. In general f before a space is substituted by a shorter-nosed f, and in combinations 'f space T' a still shorter nose. The right extension of the crossbar is also adjusted. And these are also used in various situations with f and a following letter.
2 Mar 2012 — 8:57am
William, I understand the practical issues, but
shortening the beak of the "f" before a space is
pretty much opposite of what should be done!
hhp
2 Mar 2012 — 10:10am
I don't agree, Hrant. I think it is preferable to keep the word spaces uniform looking, and I'm supposing you agree. Violation of that was what disturbed Stephen K, who started this thread.
The original of Caslon does have a very long-nosed f, and I preserved that as the default, as I liked it. I tested all of the options, and it looked to me best to slightly shorten the nose before a space; I also extended the crossbar a bit to the right, so there is less of a 'hole' before the space.
The hole under the T is why it is preferable to kern it with a space before. But then you really get into trouble with an 'f' before. So that has a still shorter nose substituted. If I have time I'll put up a picture later...
2 Mar 2012 — 10:15am
I think a minimum (apparent) wordspace is important,
but if wordspace variance were that bad justified setting
would have far fewer proponents. I think boumas are
more important.
hhp
2 Mar 2012 — 10:21am
You can also create an alternate space glyph (kinda like the old metal days)
sub f space' T by space.4m;
3 Mar 2012 — 2:51am
Maybe this depends [too] much on spacing (and design) to formulate a general rule.
If the "f" already has a negative sidebearing, I can't really imagine it would need a negative kern on top of that.
FWIW, I personally don't see things like "T"s as having "a hole under" them. The x-ht region isn't the only thing one needs to consider when kerning, is it?
3 Mar 2012 — 9:33am
InDesign supports contextual kerning triplets.
3 Mar 2012 — 1:46pm
Here's the illustration. Top is what CALT gives you. Middle is with the default long-nosed f, and the negative kerning of the space and the left side of the T. Bottom the negative kerning of the left side of the T to the space is removed. The other kerning (Ta, Tw) is retained.
To me the top looks better. In the middle the closeness of the f T is distracting. In the bottom, without the negative kerning of the space and T, the relevant word spaces seem a bit wide.
3 Mar 2012 — 1:51pm
To me #3 is best.
You might be seeing the space as too large
because you're fixating on the hole, which
however doesn't happen in reading.
hhp
3 Mar 2012 — 2:24pm
@Kent: Maybe you were just being facetious, Nick.
No, before I posted I considered that this “ligature” would default to multiple glyphs once beyond a certain tracking value.
I also like the suggestions made by Chris and Bill, to substitute alternate “f” or “space” glyphs.
**
Paul, how does one implement contextual kerning triplets in a font?
3 Mar 2012 — 2:41pm
In #3, the f T is not bad, but you have to turn off the left kerning only, which I don't think you can do, or at least without using CALT and an alternatively kerned T. The A T in #3 is a little too wide—there the negative kerning of the space T in the top line shows to advantage. So to me the top is still the best of these.
There may be a still better way to do this, but my main point is that #2 is a problem. And you are going to get that with a long-nosed f and if you do negative kerning of space T and do no CALT tricks. I think there is a minor word image or 'bouma' problem when you get something like the middle situation. That's because you might have to look twice—your eyes have to regress—to distinguish the two words.
I don't think any of this is a big problem, but I think there is a slight gain in readability if you avoid the middle situation.
4 Mar 2012 — 5:23am
Nick: No, before I posted I considered that this “ligature” would default to multiple glyphs once beyond a certain tracking value.
Hmm. Interesting assumption. I’m not sure that the adjustment of word spaces by the justification engine would trigger the same mechanism that tracking does, such that an f_space_T {liga} substitution would be disassembled in a looser line. But maybe you’re right. One would have to test this.
4 Mar 2012 — 9:30am
Bill, you didn’t show the setting with no kerning.
My preference for historic designs is with historic kerning (if not set with “original” instruments!)
For instance, I see no reason to kern T-a quite so much as you have — there is plenty of space between A and T, and T and w, so that a larger space between T and a would not look out of place, and those letters would not suffer the forced proximity caused by the prominent serif of T, the design of which mitigates gappiness in the first place.
By the same token, I prefer h&js with no adjustment to letterspacing.
This wasn’t always my preference, no doubt it is an acquired taste.
4 Mar 2012 — 9:33am
@Kent: I’m not sure that the adjustment of word spaces by the justification engine would trigger the same mechanism that tracking does … One would have to test this.
Good point, I didn’t think of that.
4 Mar 2012 — 10:49am
Nick, I think no kerning—which is historic for text as opposed to titles—would look odd or antiquarian. But I think you're right that my Ta is bit tight.
4 Mar 2012 — 10:50am
How much is "maa" compared to "a hair"?
hhp
4 Mar 2012 — 10:54am
Hrant, I suppose it would be better if it were a great new measurement, but it was a typo that I accidentally posted and then corrected.
4 Mar 2012 — 10:58am
Urban Dictionary is inconclusive.
I therefore propose that "maa" is between "a hair" and "slightly".
hhp
30 Jul 2012 — 9:06am
@Kent [ http://typophile.com/node/90561#comment-497596 ]
unluckily not. So probably CALT will win.
5 Mar 2012 — 3:28pm
@Bill: … odd or antiquarian.
That’s me alright, I’m afraid I much prefer the originals to Linotype’s makeovers—but good for Frutiger and Zapf to be making a buck off them.
5 Mar 2012 — 11:49pm
I like Bill's solution.
I also note that there are some OpenType engines that break the glyph run (the unit of OpenType feature processing) at the space. In these engines, layout that requires something like 'calt' to work across spaces won't work. :( Presumably kerning triplets across spaces won't work in these either.
Two environments I know have this limitation are Adobe Flash and Mozilla Firefox.
20 Mar 2012 — 11:27am
Nick, there is no mechanism to add kerning triplets (or quadruplets, or... I’ll just call it contextual kerning) when exporting from FontLab, but if you’re compiling your fonts with AFDKO, then the syntax would look something like this:
pos glyph1' 22 glyph2 glyph3;
20 Mar 2012 — 11:31am
Also, I should note that if you you already have a kern pair for glyph1, glyph 2, the contextual value (22 in my example above) is added to the default kern pair, so your kerning information is additive.
20 Mar 2012 — 7:23pm
I might not be getting something here, but this doesn't need a fancy three-letter super kern if the 2 pairs are present... This kind of thing is precisely why I'd argue it's a Good Idea™ to kern things like f/space and space/T.
It's a bad idea. If you're going to use kerns with spaces, as Nick says, you need three letters. You can never anticipate what will fall together. One of my test words in my test-text checks "f_space_J" as with "of Jewish" You use a pull-back kerning with the f, and the space can disappear.
Or look at Adobe Jenson, with the f_space _quotedblleft. Again, the space disappears -- really, it usually looks like it falls after the qutedblleft...
Better to use an alternate f when followed by a space. Take part of the space out of terminal of the f, and add a little to the sidebearing.
A lot also depends on how tightly you set type. If it's set as tightly as Kinross's books, you'll find all sorts of oddities with the spaceband. In Hochuli's book, Detail in Typography, he argues for a certain generosity with the sidebearing space around parenthesis, quote marks, brackets, etc. (p. 37) . Good point. But with tight setting, you'll find that space sometimes greater than the wordspace. There isn't an example in the text of DT, but you can find plenty in Dowding's Finer points.
Remember, back in the days of foundry type, the comp just didn't add space -- or as much space, when optical considerations were made, when driving out the line to justify. To get a computer do have the same effect is a lot of work. If it's ever published, I spent a good bit of time on this in my chapter of Rich Hendel's new book. Everyone is encouraged to buy a copy (Shameles plug) (Hey, Kent has a chapter in it, too) (if it's ever published). (Except Hrant, who insists he'll get it from the library.) (And no, I get no royalties -- it's Rich's book).
20 Mar 2012 — 7:15pm
I used to buy a lot of books for myself; I have
a decent library. These days I prefer to spend
the money on books for my kids. Shoot me.
hhp
20 Mar 2012 — 7:24pm
Ah. You remember my hobby.
20 Mar 2012 — 8:50pm
:-)
Good luck. I grew up dodging Lebanese snipers.
hhp
30 Jul 2012 — 3:24pm
"InDesign supports contextual kerning triplets" Paul
A-space-T and f-space-T are triplets, first -100, second +300 (/2000)
Lower row - kerning is set to zero
30 Jul 2012 — 3:29pm
In a triplet, is the value applied between the last two? And what happens to regular (double) kern values that might also be specified?
hhp
31 Jul 2012 — 3:40am
Hrant: 'what happens to regular (double) kern values that might also be specified?'
"Contextual positioning rules must be in a different lookup than pair positioning rules, since the rules are of different lookup types. Because each lookup is applied independently of the other lookup(s) over the entire text stream, the positioning change specified in a pair kerning rule will be added to the positioning change specified in a contextual kerning rule, whenever the two rules match the same glyph pair in the text stream."
[ http://www.adobe.com/devnet/opentype/afdko/topic_feature_file_syntax.htm... ]
Hrant: 'In a triplet, is the value applied between the last two?'
examples from cited site:
position quoteleft T' <0 0 20 0 > quoteright;This form shows a full value record which allows you to alter both the (x,y) coordinates of the origin and the (x,y) coordinates of the advance width. So in this example the advance width of "T" will increase by 20 (the origin remain unaltered).
position quoteleft T' 20 quoteright;The simple form of the value record which specifies a value for only a change to the (x) value of the advance width."
So it is your choice: you can shift the glyph and/or change its advance width.
And the Contextual Kerning is not limited to two or three glyphs:
position s f' 10 t period;31 Jul 2012 — 7:04am
Wow, fancy stuff. Thanks for explaining.
Out of curiosity, is there a limit to how many characters can be contextually positioned?
hhp
13 Aug 2012 — 4:24pm
HaHa! Got it! You can do it with probably many glyphs/classes, as far as you keep them in three groups and one glyph/class (middle) is affected:
pos o f space' T w o 300;or even more than one glyph/class:
position s f'10 t' -5 period;where in sequence s-f-t-. the x-advance of f is increased by 10, and the x-advance of t is decreased by 5.
The upper text matches the rule, the lower not, so only first space is wider.
[support in AFDKO added Jan 2009]
1 Aug 2012 — 10:42am
Thanks!
19 Aug 2012 — 6:47am
POC:
lookup kern1 {
pos \s \f' 200 \t' 100 \period ;
} kern1;
feature kern {
script DFLT;
language dflt ;
lookup kern1;
} kern;
Update: "start" and "end" groups aren't mandatory. You can do something like this:
pos \a' <100 0 200 0> \b' <100 0 200 0> \c' <100 0 200 0> \d' <100 0 200 0>;
at every occurrence of the string "abcd" the letters "a b c d" are extra spaced (in this example no matter what is before and after).
(tested in FireFox 14.0.1; pair kerning is still additive)
18 Aug 2012 — 1:25pm
.