Kern On—Semi Automated Kerning Plugin for Glyphs

James PuckettJames Puckett Posts: 1,946
edited June 2021 in Type Design Software
Tim Ahrens of Font Remix Tools fame has just released Kern On. Kern On is a tool that allows designers to set model pairs for how a font should be kerned and used them to generate kerning for an entire font. I think that it’s going to save me lots of time in the future.

Comments

  • Sounds promising. I hope there will be a Windows version (for the sake of diversity).
  • As it is a glyphs plug-in, I doubt it. Personally, this is a bigger enticement to switch OS than any mac-specific type apps I've seen yet. Is there anything remotely similar for FontLab?

  • @Matthijs Herzberg It's just that so many people in this world would have to rob a fancy restaurant to be able to switch OS... (As for myself, even though I could easily switch, I would feel dirty. Well, dirtier.)
  • Nick CurtisNick Curtis Posts: 118
    I’m open to make it available in other environments/font editors but it has to be economically feasible.
    May I humbly suggest that such is a two-way street. Personally, I find kerning to be rather tedious and would be willing to pay handsomely for a tool which reliably cuts the tedium down.

  • Alex VisiAlex Visi Posts: 185
    The tool seems to be very interesting at least from the website demos, great job Tim!

    However, I’m curious whether setting up the models, “debating” with the computer and then making sure it has kerned everything correctly and/or correcting the result could be more time consuming than old-fashionly running through a carefully made kerning list manually?
  • Adam LaddAdam Ladd Posts: 237
    Wondering if anyone has tried to implement this and any feedback so far? I'm close to the kerning phase on a current family, so I'm curious (I think the trial ends soon... Oct. 31).
  • Messanges Big and Small by Malou Verlomme has been kerned by this tool. Both offer a free Regular style that you can inspect.
  • Vasil StanevVasil Stanev Posts: 728
    edited October 2021
     would be willing to pay handsomely
    Me too.


  • How long (approximately) does it take to kern a font with Kern-On?

    Let's say it a serif with MyFonts minimum set LINK.
  • John HudsonJohn Hudson Posts: 2,815
    Remarkably little time. I recently kerned an Ethiopic font (using a test build of KO, the release version doesn’t support Ethiopic yet), and I was able to define about 100 model pairs in about half an hour, then spend another half hour reviewing results in test strings, before hitting the KO button to apply kerning to the whole font. That last step took several minutes to complete, because the Ethiopic kerning is based on an all-to-all syllable kerning that produced about 150,000 kern pairs.
  • PabloImpallariPabloImpallari Posts: 773
    edited June 2022
    Hi Tim... some time ago I started developing a tool to asist and improve the kerning process by letting you know what have you kerned and what you have not kerned.. and at the same time it lets you check the kerning result in context.. by showing you words that use kerning and words that dont use kerning at all.

    This tool wont kern for you.. it will generate reports and customized blocks of text so you can evaluate your own kerning.

    It was a bit complicated to use, since various steps where needed.. 1) stack the kerning from your font using a macro 2) uploading the kerning file to the server 3) editing the source code etc.. and you need to do it all again in your next kerning round iteraction.

    A pain in the ass.. but the resulting pages where so good in helping you realice the "global" efect of kerning individuals pairs that all the trouble was tolerated.

    The main idea is that when you are kerning you tend to focus to much on individual pairs.. and most of the times the pairs dont work well with the spacing cadence of the typeface.. and this tool lets you make shure that your kerned pairs are "invisible" in the general context of the typeface spacing. Basically it lets you make shure that you are not "overkerning" so your kerned pairs wont look like aliens when they are in the context of not kerned pairs (just spaced).

    Some stonecutter master once told their student that you can only set good spacing when you have a least 3 letters.. since the spacing from 1 to 2 should be similar to the space from 2 to 3. That means for us that the letter pair that uses kerning need to play nice with the next letter. Since we are kerning words, not just pairs.
    Too many times in to many typefaces the kerned pairs ends up looking like a bad cluster inside a longer word.

    This tool let you preview the results and the quality of your spacing and kerning decisions as you go. It makes it super easy to spot and correct  problems.

    It shifts the focus from the pairs and lets you see how the whole thing.
    You get a birds eye view.

    The tool source code is on githup.. you may not be able to run it.. but please have a look at the screenshots included in the description.. you will see the tool output and you will quickly understand the idea.

    If there is anything you find usefull in you tool, please fell free to copy the ideas.
    https://github.com/impallari/Contextual-Kerning-Tool

    Some of the screenshots of the tool in use:

    https://github.com/impallari/Contextual-Kerning-Tool/blob/master/images/sample01-lowercase.png

    https://github.com/impallari/Contextual-Kerning-Tool/blob/master/images/sample02-uppercase.png

    https://github.com/impallari/Contextual-Kerning-Tool/blob/master/images/sample03-capitalized.png

    And just for fun.. it lets you compare what pairs have you kerned against another typeface.
    Good for learning spacing strategies.. but also good for comparing diferent versions of the same font.. for example when you update your own fonts

    https://github.com/impallari/Contextual-Kerning-Tool/blob/master/images/sample04-compare.png

     I will love to see this tool developed for glyphsapp! are you interested?
    It can work as a complement to fine-tune, test, review and improve the results of what the user have done when they use of your awesome kerning tool. Its the perfect complement!
  • James PuckettJames Puckett Posts: 1,946

    The main idea is that when you are kerning you tend to focus to much on individual pairs.. and most of the times the pairs dont work well with the spacing cadence of the typeface.. and this tool lets you make shure that your kerned pairs are "invisible" in the general context of the typeface spacing. Basically it lets you make shure that you are not "overkerning" so your kerned pairs wont look like aliens when they are in the context of not kerned pairs (just spaced).

    Some stonecutter master once told their student that you can only set good spacing when you have a least 3 letters.. since the spacing from 1 to 2 should be similar to the space from 2 to 3. That means for us that the letter pair that uses kerning need to play nice with the next letter. Since we are kerning words, not just pairs.
    To many times in to many typefaces the kerned pairs ends up looking like a bad cluster inside a longer word.

    I had the same thoughts when setting up my model pairs in Kern On. Usually I get words, sometimes, usually with punctuation, I just get a pair. e? isn’t enough information on its own. When I’m doing punctuation I miss my MetricsMachine contexts.
  • James PuckettJames Puckett Posts: 1,946
     That last step took several minutes to complete, because the Ethiopic kerning is based on an all-to-all syllable kerning that produced about 150,000 kern pairs.
    How do you proof that? Did you have someone code you a tool that can generate a massive PDF? And if so, how many days did it take to review the results?
  • John HudsonJohn Hudson Posts: 2,815
    That 150,000 kern pairs is the raw output from KO. The first thing I do is to reduce that amount in various ways. The kerning includes a lot of small value pairs that I simply delete, e.g. anything 5 units or less. I then round all the values to multiples of 5, which will reduce the number of exception pairs when I compress to class kerning. Then I compress to class kerning, which in this case brought the kerning down to about 70,000 pairs.

    First review is testing pages of random text, looking for patterns of things that might be wrong. The nice thing about using a tool like KO is that any errors in the kerning are going to be systemic, which means if I spot an error in one pair I can anticipate and check where else it might occur. I reported an issue to Tim a couple of days ago regarding a particular Ethiopic shape that KO was consistently kerning too tightly. It makes more sense to report kerning errors as KO bugs than to fix myself: the ultimate goal is to be able to trust KO.

    Second review is stepping through the kern pairs in context in FL7’s kerning window. This is fairly rapid, even for a huge kern set, because all I am looking for is significant changes in spatial frequency in the middle of the context.
Sign In or Register to comment.