Kerning Service

Hello TypeDrawers mates,

Do somebody know a serious company that offer professional kerning service to type designers?

Thank you in advance
«1

Comments

  • I would recommend KernMaster software (http://www.fontmaster.nl). It works, will be yours and won't modify your spacing.  
  • peggo (Pedro González)
    edited May 2016
    I would recommend KernMaster software (http://www.fontmaster.nl). It works, will be yours and won't modify your spacing.  
    I'm trying to understand how DTL KernMaster works, also know its price, and how purchase it, in order to decide for the most practical option.

    Apparently don't works with .OTF .UFO formats but requires BE or IK file format.. which also can't understand how they works, or if there's exist a font format file converter.

    If someone from DTL can explain this as simple as possible to somebody who's first time face this work enviroment. (@LeMo aka Frank E Blokland do you know something about this?)

    Thank you
  • Ramiro Espinoza
    Ramiro Espinoza Posts: 839
    edited May 2016
    DTL KernMaster can easily be used with Fontlab if you run Karsten Luecke's script: http://kltf.de/kltf_notes_kerningassistance.shtml
    The script will export all necessary files to work with KernMaster. The available manual for the script is very complete and I think explains everything.
    Last time I checked KernMaster costed around 250 EUR, but contact Frank Blokland for info about how to test / purchase it.
    **Important** : IMHO, all automatic kerning systems require some human intervention to be as good as manual kerning. After running KernMaster I always check and correct the table here and there with MetricMachine, so I don't completely rely on an algorithm. However, KernMaster makes the kerning experience much more conformable. Other people will advice you different ways, I can only tell about my experience.


  • The user and all related content has been deleted.
  • peggo (Pedro González)
    edited May 2016
    Personally, I've never understood the desire to turn over such an important part of the type design process to an outside service or mechanism.
    I guess many designer don't care too much about working on kerning part for small/medium projects, but when you have large font files with multiple master structure, this is very hard to deal to and very time consuming, not to mention a very stressing matter, at least to me every time.

    And in other hand, I think well Kerned fonts look way better by far unlike those which lack in kerning work, is just about to improve the quality of a final professional product.
  • I’m trying to understand how DTL KernMaster works […]
    KM tries to achieve an equilibrium of white space while preventing collisions. It uses the existing spacing as basis. IMHO this is exactly what someone will do when applying kerning optically.

    If one doesn’t use FontLab Studio and hence Karsten’s script is not applicable, one can convert a .ttf or .otf font to .be format via OTM 3.7 Light, which can be downloaded for free from the FM website. Besides the .be file also a .cha file should be exported, because this contains the layout of the font. KM generates either an .afm or a kern.fea file, which can be added to one’s workflow then.

    BTW, the .be and its sibling .ib (4-byte support) are very versatile formats and their specs are actually public (I will see whether we can post the details on the web). The IKARUS format as such has basically become redundant, but is under the hood of a number of the URW++/DTL tools still.

    When we released the FM suite in 2002 it was available for Mac OS 9 and Windows. The tools were programmed in C++ using Microsoft Foundation Class libraries. Unfortunately Microsoft did not update the compiler when Apple released OS X the same year. Hence, today the FM tools are only available for Windows natively, but we supply Wine-wrapped versions for OS X on request. Although our recent tools, like OTMaster and FoundryMaster will support the UFO format shortly, KM will remain as it is.
    Personally, I’ve never understood the desire to turn over such an important part of the type design process to an outside service or mechanism.
    Personally, I think that what we do optically is largely based on a mechanism that finds its origin in the constraints of the Renaissance font production. The demonstrations of autospacing using Lukas Schneider’s LS Cadencer always show outcomes that are very close or identical to what type designers do optically. And so does KM for kerning.
  • peggo (Pedro González)
    edited May 2016
    @LeMo aka PatternMan aka Frank E Blokland
    That's sound very useful tool as part of the Font Production line.

    I solved the .BE format matter today but I still can't get how is possible to buy KM, I'm trying to find a way to, but can't find it among the Online Shop options (Finally I found it hidden into another option menu). Is KM a module that work into the FM only? then, I eventually will forced to buy both? or can KM work as an independent software?

    P.S. Do DTL FM team has any future plans to develop this KM to Glyphsapp users?

    Thank you in advance,
    Pedro
  • James Puckett
    James Puckett Posts: 1,992
    Personally, I think that what we do optically is largely based on a mechanism that finds its origin in the constraints of the Renaissance font production. The demonstrations of autospacing using Lukas Schneider’s LS Cadencer always show outcomes that are very close or identical to what type designers do optically. And so does KM for kerning.
    Are Kernmaster and LS Cadencer useful for kerning fonts not based on Renaissance proportions?
  • Is KM a module that work into the FM only?
    When I set up the structure of the FM suite end of the 1990s, my idea was that the modules should function independently. There is a main panel that will show the modules installed. So, if one purchases only KM, consequently only this button is activated. This brief screen recording illustrates this.
    P.S. Do DTL FM team has any future plans to develop this KM to Glyphsapp users?
    For quite some time a native OS X/Windows/Linux version of KM is under development. However, this has become rather complex in use while KM is very simple to handle; so there will quite be some work to do. Perhaps a stripped version of KM will be incorporated in FoundryMaster. When all our tools support .ufo, it should be easier to incorporate them in other workflows, of course.
    Are Kernmaster and LS Cadencer useful for kerning fonts not based on Renaissance proportions?
    KernMaster is mostly unaware of the script handled. If a glyph database contains Latin, Greek, and Cyrillic, it will take the Latin spacing as basis for the kerning of the other scripts. If this results in kerning that is to tight or loose for Greek and Cyrillic, one can use different ‘kern strength’ settings. The latter can also be used to for kerning other groups of glyphs differently.

    LS Cadencer is unaware of whether proportions are Renaissance or not. The Cadence Unit Spacing Table (CUST) file for Renaissance will work perfectly for Baroque type too. It could be that a typeface deviates in such a way from the conventions that some adaptations of a CUST file is required. Comic Sans becomes more complex.
  • Ramiro Espinoza
    Ramiro Espinoza Posts: 839
    edited May 2016
    @James Puckett I tried KernMaster with Art Deco fonts and it worked super fine. 

    @peggo (Pedro González) I have to amend something I said: Karsten's script works well but it seems to have a bug that insert "KLTFKM_" before many glyphnames when generating the .CHA file. I always open the .CHA with TextWrangler and then select and erase all "KLTFKM_" and then the file works well in KernMaster. I assume OTMaster export .CHA files without this problem but I haven't test it yet.


  • I assume OTMaster export .CHA files without this problem […]

    Oopsie: I forgot that OTM exports a version of the .cha file that misses some encoding vectors required in FM. In the declaration in the top row one can simply add ‘;ANNum;’ after ‘PSName’ and use two semicolons as suffix for all lines containing the characters.

    So, this is what one gets from OTM:

    Version 002.000
    Starttable
    GlyInd;URWNum;UNINum;Width;PSName
    0;251;;1536;.notdef
    1;1;;0;uni0000
    2;2;;410;uni000D
    3;3;x0020;410;space
    4;4;x0021;602;exclam
    5;5;x0022;772;quotedbl
    6;6;x0023;1538;numbersign

    And this should do the trick:

    Version 002.000
    Starttable
    GlyInd;URWNum;UNINum;Width;PSName;ANNum;
    0;251;;1536;.notdef;;
    1;1;;0;uni0000;;
    2;2;;410;uni000D;;
    3;3;x0020;410;space;;
    4;4;x0021;602;exclam;;
    5;5;x0022;772;quotedbl;;
    6;6;x0023;1538;numbersign;;

    Please don’t change the version number: that is internally used.
  • @LeMo aka PatternMan aka Frank E Blokland Could you ask your developers to add an option in OTMaster to export FM compatible .CHA files? I think it is important to count with a reliable way to keep KernMaster usable.
  • PabloImpallari
    PabloImpallari Posts: 805
    edited May 2016
    I have to amend something I said: Karsten's script works well but it seems to have a bug that insert "KLTFKM_" before many glyphnames when generating the .CHA file. I always open the .CHA with TextWrangler and then select and erase all "KLTFKM_" and then the file works well in KernMaster. I assume OTMaster export .CHA files without this problem but I haven't test it yet.


    That's not a bug. It's actually a feature that can be turned On or Off by editing a variable called KLTF_PlugInKernMaster.MASK_GLYPH_NAMES inside the macro. IIRC...
    Don't remember whats the use for it, but there may be a reason for masking names. Ask Karsten.
  • PabloImpallari
    PabloImpallari Posts: 805
    edited May 2016
    Also, nobody yet mentioned that you need to feed Kernmaster with the list of all pairs you want to test for the need of kerning.

    There are a few default lists but they may or may not work depending on your font glyph list and naming scheme. For example if you have alternates, swashes, or whatever not covered in the default lists.

    I've made a tool that can generate those Kernmaster lists for you.
    http://www.impallari.com/testing/tools.php --> "Kerning Pairs Generator" tab. There is some instructions in a link right there.
  • @PabloImpallari Nice! Now it works well. I thought I have tried editing this variable in the past with no success but it seems now I was wrong. Thanks.
  • Could you ask your developers to add an option in OTMaster to export FM compatible .CHA files?

    That should not be too complex, I reckon. Alternatively one can use the Light version of BezierMaster to import a font using one of the .cha files that come with the suite. The same .cha file can be used in KM then. One has to be careful though, because this only works when the naming convention in a .cha file is identical to that in the imported font. One can edit the ‘standard’ .cha files accordingly, of course.

  • LeMo aka PatternMan aka Frank E Blokland said:
    Although our recent tools, like OTMaster and FoundryMaster will support the UFO format shortly, KM will remain as it is.
    @LeMo aka PatternMan aka Frank E Blokland No KM for UFOs? We all want that!
  • Also, nobody yet mentioned that you need to feed Kernmaster with the list of all pairs you want to test for the need of kerning.
    KM comes with plain kern files and these can be downloaded from here too. That being said, I will update the kern files shortly. This an example of a kern class file. I will make related kern files available a.s.a.p. Of course, one has to check the naming convention in the files against one’s own.
  • Ramiro Espinoza
    Ramiro Espinoza Posts: 839
    edited May 2016
    To generate my KernMaster's .krn file I either extract a kerning file from one of my already kerned fonts (using Karsten's script) or I generare a custom kerning file with a simple Python script:
    # ReType Make.krn file for KernMaster 
    
    import sys,re
    
    sys.dont_write_bytecode = True
    f = open('kerning_file_name.krn', 'w')
    sys.stdout = f
    
    print 'StartFontMetrics'
    print 'StartKernData'
    print 'StartKernPairs'
    print
    
    def All_quotes():
    	left = ['hyphen','quotesingle','quotesinglbase','quotedblbase','quoteleft','A','B','C','D','F','G','J','K','L','O','P','R','S','T','U','V','W','X','Y','Z','guilsinglleft','G.alt','O.alt','S.alt','ampersand','period','comma']
    	right_and_left_= ['A','AE','B','C','D','E','F','G','H','J','K','L','O','P','Thorn','Q','R','S','T','U','V','W','X','Y','Z','uni0259','O.alt','S.alt']
    	right = ['hyphen','question','quotesingle','quoteright','ampersand','period','comma']
    
    	for A in left:
    		for B in right_and_left:
    			print "KPX " + A, B
    			
    	for A in right_and_left:
    		for B in right:
    			print "KPX " + A, B
    
    All_quotes()
    
    print			
    print 'EndKernPairs'
    print 'EndKernData'
    print

  • PabloImpallari
    PabloImpallari Posts: 805
    edited May 2016
    Personally, I've never understood the desire to turn over such an important part of the type design process to an outside service or mechanism.
    Spacing (and kerning) involves 2 different kinds of operations:

    One is conceptual, sort of art-directing yourself and deciding how much white do you want next to your black. How do you want your typeface fitting to be (More loose for text and ligth fonts, more tight for display and heavy fonts, etc..) That's the main decision where I want to have control.

    Second one is the technical implementation of your conceptual decision. The task of consistently settings all your side-bearings to reflect your concept. (By the way, most spacing/kerning tutorials focus only on this part).

    If I can decide on the 1st part, them I'll very happy to automate the 2nd part (providing that the tool does a good job).

    Think of it as Spiekermann art-directing Carrois or any other employee.
    You say to the tool/employee "do that for me please" and the tool/employee accomplish your wish.

  • PabloImpallari
    PabloImpallari Posts: 805
    edited May 2016
    KM tries to achieve an equilibrium of white space while preventing collisions.
    What about an option to allow collisions? for example think of /L/A pair in a bodonesque style. The collision will reduce the admitted withe space at the top... or a /v/y pair.
  • The user and all related content has been deleted.
  • […] for example think of /L/A pair in a bodonesque style. The collision will reduce the admitted withe space at the top... or a /v/y pair.
    The vy combination will be negatively kerned by KM if the serifs are relatively long. So, there is an overwrite for such a collision. I had to check whether I could force KM to kern the LA pair negatively. It simply refuses to do this, which I think is correct. If such a correction is required I would reconsider the proportions of the L.
    That seems to produce the best overall results, but never quite what I really want.
    I would recommend different groups with different kern strengths then. For the future version I would like the option to add the preferred kern strength to the plain pairs or classes. The default would be the setting that one prefers overall. This makes especially sense because KM is a batch tool that can kern multiple fonts at once.

    There always be some outcomes that one wants to correct manually: I have my list of pairs too. I also made a script that rounds the end figures of the values to zero or five. The latter is already an implemented option in the recent beta of the future version. But even with these extras it is possible that one prefers to do it all by oneself still, of course.
  • ‘the first one hundred fonts are the most painful […]”
    The funny thing is that I have something comparable (but not similar!) with beers: the first one hundred make me happy, and then they change from my friend into my enemy.
  • The user and all related content has been deleted.
  • [Deleted User]
    [Deleted User] Posts: 0
    edited May 2016
    The user and all related content has been deleted.
  • Ramiro Espinoza
    Ramiro Espinoza Posts: 839
    edited May 2016
    I really wish URW would improve a bit and release their KED software (which works similarly to KernMaster but runs on OSX and has visual feedback).
  • I really wish URW would improve a bit and release their KED software […]

    Patience please Ramiro! I supplied you with an early beta quite some time ago and since then we (URW++/DTL) are busy discussing what to do with it. At the moment the focus is on enhancing OTM and on the release of FoundryMaster (FOUM). At the end all development is a matter of resources.* As I mentioned, the kerning functionality could become part of FOUM.

    *Zillions of (pre-)orders would make us reconsider every schedule. ;-)