bugFree UCS Outline Fonts - Bugs: bug #39494, More on Cyrillic Kerning


bug #39494: More on Cyrillic Kerning

Submitted by:  Rosella Capriotti <rosy58>
Submitted on:  Tue Jul 16 15:50:24 2013  
Category: font metricsSeverity: 3 - Normal
Item Group: letter positioning poorStatus: Need info
Privacy: PublicAssigned to: Steve White <Stevan_White>
Open/Closed: OpenRelease: 2012-05-03

Add a New Comment (Rich MarkupRich Markup):

You are not logged in

Please log in, so followups can be emailed to you.


(Jump to the original submission Jump to the original submission)

Mon Oct 5 07:48:49 2015, comment #32:

I’m sorry, the word “телѣгы” don’t exist in Chinese Wikipedia, exist in English Wikipedia instead.

Hsing-yen He <hammerandsickle>
Sun Oct 4 12:58:19 2015, comment #31:

Hi Steve,

In this article, I found there is an entry for kerning in a word телѣгы, between ѣ and г.

Hsing-yen He <hammerandsickle>
Mon Sep 14 14:26:45 2015, comment #30:

I found Срьбїи (copied from Church Slavonic article Словѣньскъ ѩꙁꙑкъ (Slověnĭskŭ językŭ)) should adjusted kerning in FreeSerif Bold Italic.

Hsing-yen He <hammerandsickle>
Sat Aug 29 19:39:39 2015, comment #29:

allright. combinations with сѧ and сѫ will be a little tighter.
I have learned to be very conservative with kerning. It is very easy to overdo. Some letters should have more space between them.

Steve White <Stevan_White>
Project AdministratorIn charge of this item.
Sat Aug 29 19:26:11 2015, comment #28:

Well, in this case, I feel сѧ, ꙁє (as in ꙁємл҄ꙗ), сѫ (as in насѫщьнꙑи) should be a bit closer.

Hsing-yen He <hammerandsickle>
Sat Aug 29 16:06:40 2015, comment #27:

It looks good to me, on my system.
See image.
I really wouldn't kern any of those letters closer than they are.

(file #34767)

Steve White <Stevan_White>
Project AdministratorIn charge of this item.
Sat Aug 29 13:55:38 2015, comment #26:


In this page, I found jęsŭ/little yus, jǫsŭ/big yus, zemlja seems no kerning in some words.

Hsing-yen He <hammerandsickle>
Thu May 28 17:42:16 2015, comment #25:

Well, I also think some certain OT layout engines have bad typesetting in Cyrillic.

Hsing-yen He <hammerandsickle>
Fri May 22 06:48:51 2015, comment #24:

Yes, kerning is a very fine adjustment which can produce different results at different resolutions on different devices.

And unfortunately, in some environments, kerning is turned off (never for good reasons.) So we first make sure the basic letter spacing is consistent and sensible without kerning.

I usually test bulk text as well as some extreme examples at several sizes on computer screens on Linux as well as Windows, and then I print bulk text at 600 DPI, and check that it still looks smooth. It's very time consuming, and it's subjective.

For a Cyrillic font, the letters in FreeSerif are very closely kerned. In the 20th century, a lot was published with much more widely spaced letters -- probably not kerned at all. I don't know if this should be regarded as a style, or simply cheap and sloppy. But I have seeen tightly kerned text, in novels, for instance.

I think newsprint will also be tightly-kerned... but I haven't an example here. (In Germany most Russian newspapers are awful tabloids, printed in widely-spaced sans-serif.)

Steve White <Stevan_White>
Project AdministratorIn charge of this item.
Thu May 21 23:09:25 2015, comment #23:

Hi Steve,

I just made a test in my phone at that day, felt ов, ом looks loosely kerned. But when I try to test in my computer, they looks correct.

Hsing-yen He <hammerandsickle>
Thu May 21 16:16:07 2015, comment #22:

Hi Hsing-yen,

I'm not sure what you're referring to in this screenshot.

To my eye, the letter in "вет" are tighly kerned. And the capital Г is as near the small letter as it can be, without the letter going beneath it. Anything further would be a typographic mistake.

Or are you talking about something else?

Steve White <Stevan_White>
Project AdministratorIn charge of this item.
Thu May 21 02:53:45 2015, comment #21:


I found there is still have kerning problem for some small-capital shaped letters, such as совет, Голодомор.

(file #34070)

Hsing-yen He <hammerandsickle>
Mon Aug 12 08:45:24 2013, comment #20:


I just looked again at this. The combination in bold italic you illustrated does not look at all that close as in the kerning editor.

This is another case of the kern-doubling problem we have seen elsewhere. Still no idea what triggers that.

Steve White <Stevan_White>
Project AdministratorIn charge of this item.
Mon Jul 22 21:39:44 2013, comment #19:

Sorry Steve but this time I must confess I'm not satisfied of your job.

I see no change to the issue of images files #28642 and files #28632

files #28631 and files #28633: PE now collides with O, it's worse than before, and TE is still too close. It's a matter of microtypography of course but it shouldn't difficult to standardise behaviour of tails, I think. The problem is these two letters still behave differently than the other glyphs.

Rosella Capriotti <rosy58>
Mon Jul 22 20:25:44 2013, comment #18:


I just committed changes that address each of your issues.
Have a look!

Steve White <Stevan_White>
Project AdministratorIn charge of this item.
Mon Jul 22 19:13:03 2013, comment #17:

This is just bold, Обнова, the kerning to the left of BE is certainly too wide, to the right... the EN seems a bit too far, but I don't know, maybe it's just an impression.

Rosella Capriotti <rosy58>
Sun Jul 21 09:26:53 2013, comment #16:

OK, as you can see, bold italic Serbian glyphs need the same tweaking you applied to italic.

There's another issue I wish to bring to your attention: italic (and bold italic) ZHE: isn't it too close to IE and too far from O?

(file #28631, file #28632, file #28633)

Rosella Capriotti <rosy58>
Sun Jul 21 08:46:37 2013, comment #15:

OK, I shall run some tests now, have you updated the bold italic version too? I say so because I see it's still the 2072 build, I believe the same issues encountered with italic apply to bold italic too, don't they?

Rosella Capriotti <rosy58>
Sun Jul 21 08:04:08 2013, comment #14:


I relaxed the kerning of italic in several aux+small letters, including te+a and a+te, to be more like the other cyrillic pairs.

The (Cyrillic Unicode) er+e, er+a, and nge+o each has zero kerning: this is the base letter spacing.

General rule-of-thumb: round+round is nearer than round+straight is nearer than straight+straight. Looks better that way.

In particular the nge+o will unavoidably look wide due to the shape of the letters. The low bowl on the nge has less space to begin with, because often it fits under other lettes. But it can't go any closer.

The er is spaced to the right like other round letters. This space is meant to be a bit narrow.

Try printing out a page of dense text, at normal print size, and looking at the spacing. This is rather different from what you see on the screen. I have worked with the Cyrillic (Unicode) range to achieve a balance between print and screen quality. (This process never happened with the auxiliary glyphs for Serbian.)

Steve White <Stevan_White>
Project AdministratorIn charge of this item.
Fri Jul 19 17:38:44 2013, comment #13:

TE+A: the kerning is still too narrow.
богат: kerning on the right is not too wide?
време: distance between "р" and "е" too small?
крајњој: again, distance between "р" and "а" is not too small, especially if compared to distance between "њ" and "о".

(file #28619, file #28620, file #28621, file #28622)

Rosella Capriotti <rosy58>
Fri Jul 19 08:38:32 2013, comment #12:

Hello Steve,

Don't worry I can build it on my own, I've already done so several times, it's just that I see the tag "proceeding", I thought you hadn't solved it yet.

Rosella Capriotti <rosy58>
Fri Jul 19 00:07:59 2013, comment #11:


I could make a snapshot... maybe I should, but you're building straight from SVN, am I right?

The release is a sad story.

There are big things wrong still, whole ranges that have been broken either by me or by changes to the font rendering in Linux,
and at least one python script needs to be finished. Lots of work.

And you've pointed out yet another mystery (the strange double-kerning thing), that needs to be resolved.

I'm not willing to make a release until everything is working to the best of my knowledge.

It will be a while.

Steve White <Stevan_White>
Project AdministratorIn charge of this item.
Thu Jul 18 19:07:45 2013, comment #10:

OK, good, is the new version ready? So that I can make a quick test and report.

P.S. When is the release of the next official version scheduled?

Rosella Capriotti <rosy58>
Thu Jul 18 18:39:49 2013, comment #9:


Oh. in file #28602, it shows Zhe+A+Je. I somehow got it mixed up, that you were talking about the combo Zhe+A.

But A+Je have zero kerning. The hook on Je (although close) is in fact some distance from the serif on A. I'm not inclined to alter this: the A+Je is by nature an uncomfortable arrangement, as both letters are bottom-heavy; to spread them out more would make other people demand kerning.

File #28601 was to show Serb te + ie, I thought, and I acted on that, to make the Serb te more like other letters with similar tails, that is, I reduced the kerning. The Serb te and the Serb pe are in the same kern class, so the alteration applies to both.
Near as I can tell, these were the cases you mentioned.

Steve White <Stevan_White>
Project AdministratorIn charge of this item.
Thu Jul 18 17:29:32 2013, comment #8:

OK, good, but I'm still waiting for you to explain me these:

"However, you didn't mention LJE (#28598) and the other tails (PE, EM) (#28601) I can't understand which ZHE you're talking about since in my samples there's no ZHE."

Rosella Capriotti <rosy58>
Thu Jul 18 17:05:36 2013, comment #7:


je-be vs be-o

There is zero kerning here, in either case. You are referring to letter spacing.

je is indeed nearer to be than be is to o.
This is as it should be, because the right side of be and the left side of o are round but the right side of je is straight, while be is tall and rounded.

However, as I look at it, the je could be a bit nearer the be. So I will kern them slightly.

lje + ie
In this case, lje is an letter of extreme shape, and I wouldn't bring it any closer to the o.
(try changing font sizes in your browser -- at small sizes closer kerning will result in undifferentiated letters)

o + be + en
yes, be and en could be closer. Done.


Steve White <Stevan_White>
Project AdministratorIn charge of this item.
Wed Jul 17 22:24:44 2013, comment #6:

I think the space on the kerning between JE and BE is wider than the one between BE and O.

The second image shows Italic LJE+E (but upright it's the same), isn't the kerning too wide here too? LJE+O, whether Italic or upright, behaves similarly. the The same remark applies to NJE, which is similar, so I didn't post it here.

The third image shows the combination O+BE+EN which doesn't convince me, as the first kerning looks too narrow, the other one too wide.

(file #28608, file #28609, file #28610)

Rosella Capriotti <rosy58>
Wed Jul 17 14:00:13 2013, comment #5:

OK, no problem, I just relate my impressions, obviously it's up to you to take decisions.

However, you didn't mention LJE (#28598) and the other tails (PE, EM) (#28601) I can't understand which ZHE you're talking about since in my samples there's no ZHE.

Rosella Capriotti <rosy58>
Wed Jul 17 10:45:55 2013, comment #4:

Hi again!

cyrillic 'er'

First, the kerning in cyrillic and latin use different rules, due to the different distribution of letter shapes in the two alphabets. Overall (especially in normal face) cyrillic has many more letters with vertical sides. To distinguish them well, a little more space is required. Therefore the spacing of the cyrillic 'er' is not the same as that of latin 'p'.

The specific case of 'er': its right side is shaped like that of 'be', 'o', and 'iu'. So its right side bearing is the same as those letters, and the kerning to the right also the same. Its shape to the left is special, but I chose to space and kern it like other letters with a vertical on the left.

Serbian cyrillic 'de'
Yes, it was too widely spaced from 'el'. I decreased this, and reviewed all other kerns with 'el'.

Serbian cyrillic 'te'
Yes, too nearly spaced with 'ie'. Made more like other similar letters.

cyrillic 'Er'
It is already strongly kerned with 'A'; already its bowl overhangs the serif on 'A'. I brought it in a bit more, but will go no farther: the rule of thumb is that in this kind of letter arrangement, one letter at most goes over the other's serif--but doesn't "get into the other's airspace".

Beware of over-kerning. The job is not to minimize the space between letters: it is to make the text readable and smooth.

In the case of 'A' and 'Zhe', the letters do not touch. They have the minimum space consistent with the font--that of the height of the serif. Their extreme shapes, and the extreme width of the 'Zhe' forces this minimum spacing.

Steve White <Stevan_White>
Project AdministratorIn charge of this item.
Tue Jul 16 16:19:00 2013, comment #3:

More about tails: in this image you see PE's tail almost collides with the first O, but EM's tail is (relatively) far from the second O. In the second word, TE's tail is near to the E, but doesn't collide, while the second EM's tail behaves roughly as the first one.

The second image shows capitals: the first A is clearly not well kerned, the second one looks a bit too close to JE but I wouldn't bet on it.

Overall, you did a wonderful job, these are just minutiae, but since you're my provider of Serbian fonts... :)

(file #28601, file #28602)

Rosella Capriotti <rosy58>
Tue Jul 16 16:07:36 2013, comment #2:

In this image tha tail of TE almost touches letter E on the right but the tail of A is placed visibly away from TE on the left.

(file #28600)

Rosella Capriotti <rosy58>
Tue Jul 16 16:01:59 2013, comment #1:

The kerning of Italic BE in the image I posted doesn't look good to me: it looks like LJE is farther than A, instead, they should be equidistant, shouldn't they?

(file #28599)

Rosella Capriotti <rosy58>
Tue Jul 16 15:50:24 2013, original submission:


I have some reservations about the kerning of Italic ER both to the right and to the left, especially seeing the tight kerning you implemented for JE. But, again, maybe it's just my impression. Please remember in case you decide to tweak the kerning you'll have to tweak Latin PE as well, as the two letters are homoglyphic but I think you already know that.

Second issue: what I said about NJE+I in the other thread applies to LJE+I as well.


Rosella Capriotti <rosy58>


(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attach File(s):

Attached Files
file #28642:  Обнова.png added by rosy58 (257kB - image/png)
file #28631:  почетка.png added by rosy58 (367kB - image/png)
file #28632:  Italic ZHE.png added by rosy58 (322kB - image/png)
file #28633:  историју.png added by rosy58 (261kB - image/png)
file #28619:  TE+A.png added by rosy58 (353kB - image/png)
file #28620:  време.png added by rosy58 (272kB - image/png)
file #28621:  богат.png added by rosy58 (286kB - image/png)
file #28622:  крајњој.png added by rosy58 (334kB - image/png)
file #28608:  JE+BE+O.png added by rosy58 (330kB - image/png)
file #28609:  O+BE+EN.png added by rosy58 (326kB - image/png)
file #28610:  Italic LJE+E.png added by rosy58 (326kB - image/png)
file #28601:  More tails.png added by rosy58 (434kB - image/png)
file #28602:  Capital A.png added by rosy58 (350kB - image/png)
file #28600:  Tails.png added by rosy58 (467kB - image/png)
file #28598:  Bold Italic LJE+I.png added by rosy58 (310kB - image/png)


Depends on the following items: None found

Items that depend on this one: None found


Carbon-Copy List
  • -unavailable- added by hammerandsickle (Updated the item)
  • -unavailable- added by Stevan_White (Posted a comment)
  • -unavailable- added by rosy58 (Submitted the item)

    Do you think this task is very important?
    If so, you can click here to add your encouragement to it.
    This task has 0 encouragements so far.

    Only logged-in users can vote.


    Please enter the title of George Orwell's famous dystopian book (it's a date):



    Follow 22 latest changes.

    Date Changed By Updated Field Previous Value => Replaced By
    Sat Aug 29 16:06:40 2015Stevan_WhiteAttached File-=>Added OldChurchSlavonic.png, #34767
    Thu May 21 02:53:45 2015hammerandsickleAttached File-=>Added Screenshot_2015-05-20-17-40-20.png, #34070
    Mon Aug 12 08:45:24 2013Stevan_WhiteStatusProceeding=>Need info
    Mon Jul 22 19:13:59 2013rosy58Attached File-=>Added Обнова.png, #28642
    Sun Jul 21 09:26:53 2013rosy58Attached File-=>Added почетка.png, #28631
      Attached File-=>Added Italic ZHE.png, #28632
      Attached File-=>Added историју.png, #28633
    Fri Jul 19 17:38:44 2013rosy58Attached File-=>Added TE+A.png, #28619
      Attached File-=>Added време.png, #28620
      Attached File-=>Added богат.png, #28621
      Attached File-=>Added крајњој.png, #28622
    Wed Jul 17 22:24:44 2013rosy58Attached File-=>Added JE+BE+O.png, #28608
      Attached File-=>Added O+BE+EN.png, #28609
      Attached File-=>Added Italic LJE+E.png, #28610
    Wed Jul 17 10:45:55 2013Stevan_WhiteStatusNone=>Proceeding
      Assigned toNone=>Stevan_White
    Tue Jul 16 16:19:00 2013rosy58Attached File-=>Added More tails.png, #28601
      Attached File-=>Added Capital A.png, #28602
    Tue Jul 16 16:07:36 2013rosy58Attached File-=>Added Tails.png, #28600
    Tue Jul 16 16:01:59 2013rosy58Attached File-=>Added Italic Small Cyrillic Serbian BE.png, #28599
    Tue Jul 16 15:50:24 2013rosy58Attached File-=>Added Italic Small Cyrillic ER.png, #28597
      Attached File-=>Added Bold Italic LJE+I.png, #28598

    Back to the top

    Powered by Savane 3.1-cleanup1