case sensitive forms (CASE feature) and kerning - how to handle best?

Sebastian Nagel's picture

Dear readers,

i am wondering how to best handle case sensitive punctuation (opentype CASE feature) and kerning of these characters with uppercase letters. Depending on the vertical position of the character (let's say "{"), the horizontal kerning has to change too to make everything look well alligned.

I can imagine of these solutions (working with fontlab 5):

- kern as if CASE was always applied (looks ugly if the user just types with capslock)

- kern as if CASE was never applied (often looks bad just when it should actually look good)

- fiddle with the horizontal pos values in CASE feature - but it would mean to change them for every possible combination manually - lots of work ...)

- make duplicates (or even design special) "{.case" variants, just do substitutions in CASE feature, and do kerning with these variants instead of the lowercase ones. This would work, but doubles glyphs and is quite "not as it was meant".

so what do you think is best practice for this?

tanks for your input
Sebastian

Michael Jarboe's picture

I simply kern the standard punctuation since CASE will not always be applied.

Then kern all CASE punctuation with all Capital forms and numerals.

Set up pairs when you can.

Sebastian Nagel's picture

So you create special .case puctuation glyphs for that (or at least create a copy of the normal ones)?

Igor Freiberger's picture

I have additional glyphs for punctuation to uppercase and small caps. Petite caps uses the same normal punctuation. In most cases these glyphs are copy of normal ones, just vertically repositioned and with different spacing. Sometimes the glyph is also a bit edited to match UC and SC height. Using proper spacing may avoid the need to special kerning in most glyphs.

Michael Jarboe's picture

Yeah, .case glyphs that are just repositioned vertically and like Igor said, depending on the type style maybe edited even more.

Then I have a separate kerning text file that has all punctuation forms replaced with, say /parenleft.cap hyphen.cap etc.

It's easy to do just using Find/Replace in a text editor and doesn't take long to get through the kerning for the case feature

Nick Shinn's picture

I make alternate punctuation characters, e.g. "parenleft.case".

But I try not to overdo it, and now put a lot less kerning in fonts than I used to.
For instance, if you kern a raised hyphen with capitals, PART-TIME will look like shit, because there will be a huge space between R and T, and the two T arms will be bumping, with the hyphen jammed up underneath them.

The side bearings of a hyphen are part of the character.

Sebastian Nagel's picture

so let's go boost glyph count by creating .case variants :)
and if i have to create copies anyway, i can also adjust shapes if it doesn't fit perfect.

thanks for the input.

Syndicate content Syndicate content