Bearing and kerning

I have some uncertainties about the relationship between bearing and kerning. I'm working on the Italic of a font where, to express myself in a very practical way, I created in a subtable a "right" group with BDEFILNP. However I realized that the left bearing in these characters is different, so for example by setting the same kerning space there is more space between the glyphs of the AD couple and less space with the glyphs of the AL pair. Is this normal or does it mean that the width of the various glyphs is badly set? At this point I should change the left bearing so that all glyphs BDEFILNP have the same bearing space on the left or leave them as they are and work with kerning, but without creating a unitary class that includes the glyphs mentioned above? Thank you
Tagged:

Comments

  • mauro sacchetto
    mauro sacchetto Posts: 353
    edited January 2019
    I check for example some glyphs of PremierePro. LBearing of H is 33, of I is 35 anf of N is 15. Why there different measures? 
    Would it not be more reasonable and convenient for kerning to set all glyphs with the same "left side" with the same bearing?
  • Adam Jagosz
    Adam Jagosz Posts: 689
    edited January 2019
    I'm having trouble finding a font named PremierePro (looks like the name of the Adobe app, more like). But if it's a serif font, then the stems of /N are thin elements, so they don't need as much sidebearing, and as for /I, it is a narrow glyph in itself, so it might have been given slightly more generous spacing so that it stands out better.
  • Adam Jagosz
    Adam Jagosz Posts: 689
    edited January 2019
    Generally speaking, when splitting responsibility between spacing and kerning, the rule of thumb is to make it look as good as possible without kerning, and only then fix the remaining issues with kerning. (Odds are the font will be used without kerning sometimes.) For instance, you might slim down the bearings in /A/V/W/X/Y to the minimum, make it only as large so that punctuation like comma, quotes, brackets, doesn't bump into them. I'm not sure about your AD/AL situation, normally /D and /L would have the same left sidebearing.
  • Yes, I mean Adobe GaramondPremierePro.
    In that font/D and /L  have respectively  -36 end -37 LBearing.
    Ok, I'll try some changes to bearing before taking care of the kerning
  • Other question: is it appropriate that RM glyphs stay just centered, with a simmetric bearing? And what about the same setting for Italic?
  • mauro sacchetto
    mauro sacchetto Posts: 353
    edited January 2019
    For instance, I've these glyphs:
    It seems to me that in IAI there is more space between IA respect than between IA
    It's completely evident that in IMI and INI there is much more space between MI and NI 
    compared to the previous glyphs couple.
    In cases like this have I to intervene by means of kerning, or changing bearing? Can this last solution present contraindications?
  • Adam Jagosz
    Adam Jagosz Posts: 689
    edited January 2019
    I wouldn't really reach to kerning with pairs like /IAI /IMI /INI. It would be helpful if you could post a pdf so that bearings can be told apart by selecting, or even better if you indicated the bearings in the picture. When making italics, there are several approaches, you can decide to make the sidebearings in all glyphs optically symmetrical either at the baseline, half way up the x-height, half way up the cap height, or somewhere in between.
    I think while there is more whitespace in /I/A than in /A/I, a peek at the serifs at the baseline tells me the opposite. The former is caused by the fact that /A is more slanted than the /I. Cumulative whitespace is just one factor, you should also count in stem rhythm and serif gaps.
    Those minute differences in bearings in Adobe Garamond remain mysterious to me. Maybe these guys are such super pros that they decided that "(L)" will look more balanced with that extra one unit on the left, so that the stem is mildly more centered between the brackets... (When rasterized, sometimes that might add an extra pixel or even a few). Or they're just really sloppy... or the font was scaled and then rounding introduced the differences (though the last time I checked how math works, it would round to the same number, so that's unlikely).

  • Bearing in some pairs of the glyphs of my pic:
    IAI: 55 I 53 + 22 A 17,99 + 55 I 53<br>IBI: 55 I 53 + 42 B 57 + 55 I 53<br>IDI: 55 I 53 + 44 D 51 + 55 I 53<br>ILI: 55 I 53 + 42 L 19 + 55 I 53<br>IMI: 55 I 53 + 34 M 25 + 55 I 53<br>INI: 55 I 53 + 46 N 47 + 55 I 53
    I'm inexperienced, but the logic of these numbers escapes me: 17,99?

    Why bearing ofter is not symmetrical, even if the glyph is perfectly symmetrical like that of the letter N?

    It' very interesting what you say about Italic sidebearings (all glyphs optically symmetrical either at the baseline, half way up the x-height, half way up the cap height, or somewhere in between), but what does it mean in more practical words? Is there a guide I can read?
  • George Thomas
    George Thomas Posts: 648
    edited January 2019
    @Mauro -- this link will take you to a series of articles on spacing, kerning, etc. that should give you some valuable insight into the process:
    https://www.fontshop.com/content/adventures-in-space_spacing
        Part 1 – Adventures in Space: Spacing
        Part 2 – Adventures in Space: Kerning
        Part 2.5 – Adventures in Space: Special Cases
        Part 3 – Adventures in Space: Tracking


  • mauro sacchetto
    mauro sacchetto Posts: 353
    edited January 2019
    Thank you for your suggestion.
    However, those articles enunciate more than anything else "philosophical" principles which, in theory, are already clear to me. It is known, however, that moving from theory to practice is not always painless.
    For example, one of those articles states the principle that «the right bearing of an 'h' will be similar to the 'm' and 'n'». And in fact in a .pdf written in 10-12 pt body the spaces between the glyphs seem more or less the same.
    But if I then check the RBearing of \m \n and \h for example in the GaramondPremierPro I find that the values ​​are: 25 for \m, 28 for \n, 11 for \h. The same for ATFGaramond: 18 for \m, 24 for \n, 26 for \h. I do not think that these differences are the result of chance or inattention, but I can not identify the reasons.
    Now I ask: would it not be more appropriate to set these values ​​to an equal extent, which would make it possible to create simple and homogeneous classes of kerning?
    In the font I'm working on to learn these procedures, do I have to keep the bearing as find it, which is different, or proceed to homologate it for similar glyphs?
  • Kent Lew
    Kent Lew Posts: 944
    Honestly, I would not have chosen Garamond Premier Pro as an exemplar to learn contemporary practices from.
    I respect Rob Slimbach’s work greatly. But, as something of an historic homage, Garamond Premier Pro is bound to have plenty of small idiosyncrasies that reflect methods and appearances from centuries ago. Not slavishly, of course; but I am not at all surprised that it does not exhibit perfect logic and symmetry. That was likely a goal of the design, and I would venture to say that it is not Slimbach’s approach in general.
  • George Thomas
    George Thomas Posts: 648
    edited January 2019
    A quick look at Garamond Premier Pro tells me you are looking at the serifs and not the stems which is where the confusion comes in. When establishing basic spacing, serifs are ignored because they can vary in length, which is why the sidebearing numbers are misleading. The amount of white space from zero to to the left stem and from the right stem to the character width is what is important.
    As Kent said, this font isn't a good one to learn from. Another font, perhaps a more modern design, would be best but always keeping in mind that some deviations from what one might think of as the norm for that font will usually be there due to decisions of the individual who did the work.

  • Ok thank you, I will check other fonts.
    In any case, it would be important for me to understand two things:

    1) it is convenient to set all the characters with similar characteristics (for example \c  \e and \o) in this case with a strictly equal LBearing, and 
    to set all the characters with similar characteristics (as well as \E \B and \N) in this case with a strictly equal LBearing?

    2) Is it convenient to set both the LBearing and the RBearing of the same glyph identical?
  • Assuming the serifs, if any, are the same, it does make sense to have /E and /B LSB's identical. As Adam mentioned above, /I might be a little more generous since it's a narrow letter, and /N might differ if it has a thin stroke that changes the way it optically reads vs. the thicks. 

    What font editor are you using? Most if not all can link to references when setting sidebearings, so for example you can set /B's LSB not to a number of units, but rather to match /H's. Then if you change /H's, /B's will change too. Probably wouldn't be a terrible idea to set all straight-sided letters to reference the same glyph as a starting point, and then use your eye to decide if letters like /I or /N should be unlinked and adjusted. Likewise, in many designs /c or /e may be linked to /o, and so on. 

    For sloped letters like italics, best for your sanity is to use a font editor that employs indicators of sidebearings that are slanted to a set italic angle. If that's the case then yes, symmetrical glyphs (sloped or not) can be set to identical sidebearings. You may find that your editor even allows the RSB of /H to be linked to its LSB. 

    As always with type design, automate where you can, but give your eye the final decision. 
  • mauro sacchetto
    mauro sacchetto Posts: 353
    edited January 2019
    Yes, even FontForge can produce glyphs reference.
    However, something something still escapes me.
    I set, for exclusively experimental reasons, both LBearing and RBearing to 20 units to three glyphs. Here the result:


    Now, even with the naked eye it is clear that the space between \i and \l is a bit larger than that between \h and \i. In this case, what's the reason? What am I wrong in calculating the spaces to be attributed to the bearing? There must be a method to calculate these distances exactly, I believe!
  • I'm guessing FontForge (like many editors) is using the leftmost and rightmost extremes of the glyph's contours to set the sidebearings. With these letters, that looks like it's the edges of the baseline serifs. The issue is that your eye is rightly judging the *area* between the letters, but the software is setting *distance* between x of rightmost point of left letter to leftmost point of right letter. 

    As George suggested above, distance between stems is a better starting point than distance between serif tips. But I don't know if FontForge enables setting sidebearings at a specific height.
  • I don't know... I'll ask as soon as possible to FF forum
  • But I don't know if FontForge enables setting sidebearings at a specific height.
    Not that I’m aware of. It just takes the extreme leftmost and rightmost points. One exception, though, is that if you use the menu to set a side bearing, then it will be set relative to the nearest object, be it a point or curve extreme, as if a point we’re there. The displayed distance to the origin or advance width are always measured to the nearest actual point though.
  • @Mauro, you happened to pick glyphs which have exceptions applicable to sidebearings. In the case of the /h, /m, /n and the left side of the /u, since the curve adds white space, many designers subtract 1/2 to 1 unit to compensate. It appears that's what has been done here.
    In the /i and even the /l case, designers often add 1/2 unit or more space (design dependent) on both sides of each to avoid a dark spot in the text caused by the vertical row-of-sticks effect. I don't think that has been done here because the face is open enough. It could happen in heavier weights of the same face.
    There must be a method to calculate these distances exactly, I believe!
    You can be as formulaic as you wish, but the reality is that there is a basic starting point for spacing and the designer builds from there based on the design being worked on.

  • mauro sacchetto
    mauro sacchetto Posts: 353
    edited January 2019
    @AbrahamLee
    It just takes the extreme leftmost and rightmost points
    Do you mean that it takes the two extreme points of the serifs?

    @George
    you happened to pick glyphs which have exceptions applicable to sidebearings
    Yes, but I changed both bearing to 20 units for my picture example, so no exception there...

    So, if I'd like to have an identical bearing, from what to what must I calculate?

  • John Hudson
    John Hudson Posts: 3,229
    Sidebearings describe the relationship of the left and right extremes of a glyph outline to the sides of an invisible rectangle. As such, they're not terribly useful numbers when it comes to spacing a typeface, especially not for italics, and even less so for seriffed glyphs.

    What you want, in order to space glyphs systematically and compatibly across a family, is to establish what I call a 'spacing height' — typically slightly higher than half the x-height for a Latin type — at which to do measurements from stem edges rather than from extremes. This allows you to provide consistent visual rhythm between stems independent of the length of serifs, and independent of slant angle.
  • ok. Thanks to you, I solved the most part of these problems.
    A last question: there is a method, an instrument or a calculation to measure accurately the space between the left and right extremes of a glyph after it has been applied the kerning?