I have to fix the kerning of the apostrophe, really important for the Italian (and French) language, as in the case of
L'America l'esempio l'Organizzazione
etc.
I tried to change the metric of the apostrophe, but it seems to work properly for the left side (L + '), while the metric of the next font maintains an excessive distance to the right side (' + A).
As a result, I thought not to touch the apostroph metric, but to resort to contextual kerning. I do not understand, however, which strategy should be adopted, as I have to approach the apostrophe both the letter that precedes and the one that follows.
Should I adopt Contextual Positioning? Chaining tables by classes or by coverage? And how can I operate, as written above, approaching the apostrophe both the antecedent and the following glyphs?
Thank you
Comments
the first one L+' (quotesinge) and the second one ' (apostrophe) + A, and finally I've the right distance. However, looking some fonts I've, I didn't find a such setting; so I concluded that they adopted a method less direct, but more efficient. But which method??
What do you mean with "a second glyph"?
Should I create a locl table in GSUB or in GPOS?
I checked, for instance, ATF Garamond (which produces the kerning I need) and other two or three fonts, but in their locl tables there is nothing relevant to apostrophe kerning... And, moreover, I was unable to find where're the rules that oversee kerning for apostrophe
Plz, suggest me where I can find those rules, and I'll try to understand...
Your 'locl' feature would substitute the default glyph by the new one (GSUB), possibly in a contextual substitution so it only affects the particular combinations you care about.
Adobe has used this technique (even on one of my typefaces), and it seems to work well.
in any case, where can I find this typical kerning in a known font? I mean FontFolio11 or Google Fonts, or, for instance, EB Garamond? I'd like to see which method they use, but I'm unable to find it
PS
Regarding the new glyph, have I to create only apostrophe (quotesingle), or even quoteright? And have I to add a new substitution rule?
So I created a new quoteright.fr with a different bearing adequate for my font.
Only... I was unable to find a substitution rule in GaramondPremierePro, if I checked well in calt. SO: where is this rule? I need to see how good fonts are made, to learn.
A last problem: in any case, even if use (once the substitution rule has been created) the new quoteright.fr glyph, in any case I have to use some kerning, for obviously L'A and L'o have different metric and spaces. So, I ask: what is the advantage of creating a new glyph, if I still need in any case to kern?
My goal is to reduce (and not to increase) the space between < letter + apostrophe + letter > with respect to the font metric I'm trying to work with. Inexperienced, I wonder if the best solution is to reduce the bearing or create a series of kernings. In the first case, however, since reducing kerning of the apostrophe is a general provision, I should in any case then create an appropriate kerning. I would like to understand the method adopted by the experts or in the better constructed fonts
Are you kind enough to indicate me which Lookup and Contextual in Premiere?
@KenLew
In the first part of your Comment you show me a very good way.
But, passing from theory to practice:
1. I create an "apostrophe.fr" with simmetrical sidebearing, and this is not a problem.
2. I have to create a <Contextual Substitution> or (as I believe) a <Contextual Chaining Substitution>?
3. Then, I create a subtable, but: by Classes or by Coverage?
4. If I insert the glyphs, it request me a Lookup too. But have I to create another Lookup before? It's confusing...
Does it exist a clear guide or manual explaining all this?
Thank you
Since I don’t have access to the original source code, I can only tell you what shows up in FontLab's (FLS5) decompilation of the features. (I only looked at the Regular)
The very last two lines of the 'calt' feature are
This is the only substitution rule in which quoteright.fr appears. In OTMaster this is identified as GSUB lookup #33
Rather, I completely miss the logic of the steps I have to follow, as I wrote in the previous message.
Do I have to create just a <Calt Lookup> or even another <Single Substitution Lookup> where I say to replace quoteright with quoteright.fr?
In the first case, insert the glyphs in the List of Coverage Table (the class of all alphabetical characters).
Should the <Add lookup> entry remain empty? Or have I to insert the <Single Substitution Lookup> over descripted?
And how do I connect the glyphs inserted in the Coverage Table to the substitution of quoteright with quoteright.fr?
Since I do not want to abuse this forum, could you indicate an understandable guide that explains the method and steps?
Thank you
However, for I saw that in some optimal fonts is adopted the technique of Calt Substitution, and for it's a basic know-how to handle fonts, I'd like to understand how it's possible to apply it. What is wrong / missing in the steps I quoted above?
PS If I set a Calt substitution only for some languages, how is determined in which language is written the text?
And hitherto I was not able to activate calt
Plz, be king anough to consider not so much the software, but the steps to produce a working Calt....
PS I understand that obviously in this case I have to write a file to merge, but I was not able to find if, moreover, it's possible to create/export a .fea file of my font with FontForge
@ThomasPhinney Plz, consider the steps I described above. Is it enough to produce a Coverage Table, or a Substitution Table too? That's one of my great uncertainties...
I don't normally use FontForge, but opening it up I get the impression that you are looking at the 'Lookups' tab inside the Elements->Font Info dialog. While it may be possible to create features from within this dialog, this is really the place where one goes to look at the low-level details of an existing font.
To create new features, you really should create a feature file and use the File-Merge Feature Info… command. That way you don't have to worry about low-level details like coverage tables etc. as the compiler will do that for you.
https://www.adobe.com/devnet/opentype/afdko/topic_feature_file_syntax.html
The FontLab manual contains a somewhat more readable intro to the fundamentals. You can download the manual from the following site without purchasing FontLab.
http://help.fontlab.com
That depends on the application, but most applications allow you to set the language of a block of text. In some cases language selection may be tied to the spell-checker settings.
A last clarification. For in metadata I have to specify languages, in the lookups is it enough to put:
(or even without cyrl for in my case I've no glyphs for Russian language) or must I write all supported laguages explicitly? I mean
And why in the fonts I controlled there is never English? Is it the (understood) <dflt> language?
There's nothing to prevent you from declaring English (latn ENG), but English typically has no language-specific behaviours, so there's really no need.
If you use an AFDKO feature file, you won't need to deal with any of this metadata since the languagesystems will be declared within the feature file. As I said, the lookups tab in FontForge is really the wrong place to be doing all this.
Thank for your help
@André G. Isaak Sounds interesting, care to share a link?