[HN Gopher] Kerning, the Hard Way
___________________________________________________________________
Kerning, the Hard Way
Author : todsacerdoti
Score : 217 points
Date : 2025-03-14 19:47 UTC (1 days ago)
(HTM) web link (home.octetfont.com)
(TXT) w3m dump (home.octetfont.com)
| jasonthorsness wrote:
| Ha the font looks great; but this seems to be pushing the
| boundaries what fonts themselves were designed to support,
| definitely "hard mode". What is the intended use case?
| LegionMammal978 wrote:
| Classically, you'd do things like replace f+i with an fi glyph,
| or f+f+i into an ffi. Though I'm surprised that it can be used
| to split one glyph into multiple glyphs, then transform those
| glyphs again.
| drpossum wrote:
| keming
| Stratoscope wrote:
| https://fuckyeahkeming.com/
| aidos wrote:
| I love bad kerning more than most, but a lot of those feel
| like someone just put a space in the wrong place.
|
| That's a shame, I like my kerning to sit in that sweet spot
| where people don't notice it but once you point it out it
| gives them an unsettling feeling wherever they see it.
| keming wrote:
| > I like my kerning to sit in that sweet spot where people
| don't notice it but once you point it out it gives them an
| unsettling feeling wherever they see it.
|
| I'd love to see some examples of this.
| PaulHoule wrote:
| I did a round of printing work two years ago which got me to
| notice (1) very few printed posters where people use serifed
| display fonts and (2) awful kerning by default with Microsoft
| and Adobe tools. When I did desktop publishing in the early 90s
| and early 00s I never noticed that kerning was so bad and
| wonder if I had bad taste back then or if it really got worse,
| like we can blame a patent troll for bad kerning -- I look at
| old books and see the r almost making love to the s next to it
| and think how much better it can be.
| JadeNB wrote:
| > When I did desktop publishing in the early 90s and early
| 00s I never noticed that kerning was so bad and wonder if I
| had bad taste back then or if it really got worse, like we
| can blame a patent troll for bad kerning ....
|
| My suspicion is that there's always been bad kerning in most
| computer-generated text. Obligatory XKCD:
| https://xkcd.com/1015/
| thesuitonym wrote:
| Back then, computers didn't really do kerning as well as they
| do now, and desktop publishing wasn't as common or
| affordable. Today, publishing tools are so easy to use, and
| the default kerning is usually good enough that most people
| won't notice a problem, or if they do, they often don't know
| it can be fixed.
| f30e3dfed1c9 wrote:
| I spent most of the 1990s and early 2000s working for a
| typesetting company whose work was college textbooks and
| monographs for academic presses. We applied modified kern
| tables to every single typeface we acquired. The tables from
| the font vendors were inadequate in various ways.
| adityaathalye wrote:
| Soon as I saw the headline, I was keming here to say the same
| thing. You beat me to the pumch.
| HeliumHydride wrote:
| https://reddit.com/r/keming
| jedberg wrote:
| I literally read this headline as "keming the hard way" and
| thought it was the most clever title ever.
| AceJohnny2 wrote:
| That is the joke in the community ;) See also
|
| https://www.ironicsans.com/2008/02/idea_a_new_typography_ter...
|
| https://fuckyeahkeming.com
|
| https://www.reddit.com/r/keming/
| jedberg wrote:
| Oh I know. I've been thinking about keming for 30+ years. :)
| AceJohnny2 wrote:
| lol ooops, missed who I was talking to ;)
| stavros wrote:
| OK then I'm going to need an explanation of what was clever
| about it. It seems like it would just be reusing the meme,
| no?
| rasz wrote:
| Kerning, the super easy way straight from 1986 Atari ST:
| https://en.wikipedia.org/wiki/Calamus_(DTP)#Calamus_Intellig...
| whatnow37373 wrote:
| I don't see how the benefits of kerning, if any, outweigh the
| enormous costs.
| Muromec wrote:
| It looks nice. When everyrhing consistently looks nice, thise
| small things accumulate into one apple.
| exe34 wrote:
| it's one of many little things that add up to "oh your poster
| looks much nicer than the others" - but they can't put their
| finger on what exactly makes it nice.
| keming wrote:
| Kerning lets letters be spaced more uniformly, which is easier
| to read for most of us.
|
| It also allows letters to crowd each other like friends in a
| wacky group photo, a tree overhanging a sidewalk, or a cat's
| tail doing its weird contortions. Fonts are fun.
|
| It's worth the trouble I think, but there are options if you'd
| rather not support it.
| dsp_person wrote:
| In my e-reader I changed the font to Roboto Mono and completely
| forgot it was monospace. It's not like reading feels any less
| efficient. Idk might even feel more efficient or comfy somehow.
| MrMcCall wrote:
| Maybe there's an advantage to having each successive
| character appear perfectly rhythmically across the page.
|
| What I want are two or even three shades for consecutive
| lines, to make it easier to transition from the end of the
| current line to the beginning of the next.
| numpad0 wrote:
| sales
| f30e3dfed1c9 wrote:
| The costs aren't enormous or anything close to it.
| seumars wrote:
| Funnily enough the example given of good "L" and "T" kerning in
| the word SALTY is badly kerned, the letters are kerned too close
| to each other. The classic trick is to look at 3-letter groups at
| a time, one word at a time.
| gundmc wrote:
| I thought so too, but now if I look it seems as if every letter
| is just under two stripes with from its neighbor?
| eviks wrote:
| This doesn't help much since visual perception doesn't depend
| just on this distance
| beezlewax wrote:
| It's more of an artform than a science as I think different
| people perceive this differently
| pixelfarmer wrote:
| This has a lot to do with framing in photography,
| architecture, and all these other things where "design"
| is involved that humans perceive as pleasing. It also
| means that not everyone has a knack for that. In return,
| chances are good that there are ways to actually
| "calculate" it. One well known example: The golden ratio
| that shows up in many designs, architecture, framing etc.
| hinkley wrote:
| I worked on a project that was using shades of grey for
| everything before we hired a designer. It was terrible
| and illegible and designed by our boss who I'm am
| entirely convinced has aphantasia.
|
| Someone started complaining that two pieces of text
| weren't the same color. They were exactly the same color
| though. We'd built an entire UI full of optical
| illusions.
| Hackbraten wrote:
| It's a deliberate design decision because of the stripes:
|
| > The pattern of vertical stripes means that kerns can only be
| a multiple of the stripe repeat (not quite true, and i have
| sketched out more general versions of this, but it is true for
| this font).
| hinkley wrote:
| And the HN font on Safari puts the TY too close together IMO.
|
| Look at them touching. Gross.
| russellbeattie wrote:
| I can't help but point out that as someone who went to college
| for journalism and graphic design in the early 90s, and had to
| lay out galleys using strips of words and a razor blade, let me
| assure this isn't the hard way. Correcting a missing apostrophe
| or manually adding a hyphen while not throwing off an entire line
| requires both an eye for kerning _and_ a steady hand.
|
| Get off my lawn.
| stavros wrote:
| Oh yeah? You youngsters have it easy, you don't know what it
| means to have to throw away the whole tablet and start again
| when your chisel slips.
|
| The Pharaoh was _not_ amused, I 'll tell you that much.
| Someone wrote:
| Impostor! Clay tablets where written in wet clay, so you
| didn't use a chisel and didn't have to throw away the tablet
| when your _stylus_ slipped. At worst, you'd erase the entire
| tablet, but you likely could erase a small part often tablet.
|
| Many tablets even could be recycled after the pharaoh read
| them (could pharaohs even read?).
| https://en.wikipedia.org/wiki/Clay_tablet: _"Cuneiform
| characters were imprinted on a wet clay tablet with a stylus
| often made of reed (reed pen). Once written upon, many
| tablets were dried in the sun or air, remaining fragile.
| Later, these unfired clay tablets could be soaked in water
| and recycled into new clean tablets. Other tablets, once
| written, were either deliberately fired in hot kilns, or
| inadvertently fired when buildings were burnt down by
| accident or during conflict, making them hard and durable"_
| hinkley wrote:
| But I thought a lot of the tablets we have were from trash
| piles and they seem to have typos. So who is the impostor
| here?
|
| <grabs the top of your head>
|
| Old Man Withers!?
| nick3443 wrote:
| Try having your finger slip and smudge a buffalo drawing. You
| have to find a whole new cave to draw in!
| oniony wrote:
| Would it have been possible to fix this by instead swapping out
| the LT pair with a ligature?
| shove wrote:
| I could have sworn that was where this was going in the first
| place
| dzaima wrote:
| The GSUB lookups used are indeed the same thing that's used for
| ligatures.
| euroderf wrote:
| I've had the same idea for Finnish, where all-uppercase text has
| some really ghastly kerning issues, like YT and VY and KY and
| (gack!) LJ. I hope to see a font RSN.
| user3939382 wrote:
| Kerning the hard way would be to hardcode the "numberOfChars
| factorial/!" number of custom kerning distances.
| ninkendo wrote:
| It's not factorial, that'd be ludicrous... Rather it's (n *
| (n+1))/2, which is similar to factorial but using addition
| instead of multiplication.(52+51+...+1) So a lot, lot smaller.
| user3939382 wrote:
| Oh yeah, you're only doing the pairs, you're right
| Dylan16807 wrote:
| Don't divide by two. Order matters.
|
| And that +1 is going the wrong way so you might as well just
| say n^2.
| ninkendo wrote:
| Oh, right, duh. Yeah it's just n^2.
|
| (If it was n+(n-1)+...+1, then my equation would have been
| correct, but you're right, since order matters it's just
| plain n^2.)
| badlibrarian wrote:
| The complexity comes from needlessly combining two separate
| things into one: a simple repeating background pattern and a
| typeface. It's a "serving suggestion" when really all that's
| needed is the corn flakes.
| kevincox wrote:
| Yes, but if you are really picky you will want your background
| pattern to align nicely with your typeface. Sure, you can
| carefully try to ensure that each character is a multiple of
| some fixed unit and set your stripe size based on that. Then
| make sure that the start padding is correct. But every step of
| the way any differences in the text renderer and things like
| accessibility settings overriding font sizes will be working
| against you. If you want to use this on a website or any other
| medium that doesn't have a very strict and consistent rendering
| pipeline I can't think of a better way to do it than a font
| like this.
| badlibrarian wrote:
| Highly stylized letters over a background traditionally
| utilize .png or .jpg technology. Not that this guy's attempt
| at writing a wingdings++ compiler isn't amusing.
| hinkley wrote:
| Yeah this is something you do for a logo. And I believe
| today you'd probably see this done as SVG. Though whether
| you would build the font out of lines or use an existing
| font one letter at a time is probably an open question.
| layer8 wrote:
| Isn't kerning something that would be amenable to be
| approximately solved by machine learning? I.e. for a "good
| enough" default kerning? (Ignoring the extra difficulty from the
| stripes in TFA.)
| shove wrote:
| Since it's an issue of equalizing the perceptual area in the
| negative space, there's not really any reason to throw ML at
| it. Throw actual math at it.
| f30e3dfed1c9 wrote:
| There have been lots of attempts to automate kerning for
| decades. Most people seem to agree that they're still
| inadequate and that manual adjustments produce the best
| results.
| orbital-decay wrote:
| Human perception is highly non-linear and largely based on
| the concepts stored in the brain. Trying to manually
| approximate that with math is bound to fail once you approach
| certain fidelity threshold. If you look at the recent color
| science and spatial perception research, it becomes obvious
| that it makes total sense to mass profile the perception and
| throw ML at it. A lot of researchers are still in denial
| about this, though.
| raphlinus wrote:
| Agree with sibling comments. There's something very slippery
| and tricky going on with "perceptual area," it's not simple
| geometry. This is actually an area where I think machine
| learning has something to offer.
| scyzoryk_xyz wrote:
| Mrs. Scyzoryk is a typographer, confirms that it's not just
| math, but can't imagine using ML for what is an integral
| part of developing an ,,eye" and going through the process.
| stavros wrote:
| Just like programming! I can't imagine how we'd teach
| machines to code.
| scyzoryk_xyz wrote:
| Yeah and also: new font design is a niche niche niche
| domain.
|
| It's not like accelerating font development would give us
| something new. Most of what most of us need exists at
| this point.
| shove wrote:
| My initial point exactly
| raphlinus wrote:
| Well, I have some qualifications in typography, a
| reasonable familiarity with ML techniques, and am fairly
| good at math (though I can't claim to have won the
| Putnam), and I can imagine how to apply ML for this task.
| layer8 wrote:
| I would think that ML is exactly useful in developing an
| "eye".
| throwawayk7h wrote:
| Fonts should probably not do this. This would be better served as
| the font being what's in negative, and then the backdrop behind
| it being an unrelated graphical element, perhaps accomplished
| with css.
| crazygringo wrote:
| This is just masochistic.
|
| Why would you even try to encode a striped background into a
| font? And then make kerning work? I don't even know what to say.
| "The hard way" indeed...
|
| Backgrounds are backgrounds, fonts are fonts, and never the twain
| should meet...
| skrebbel wrote:
| > Why
|
| For fun
___________________________________________________________________
(page generated 2025-03-15 23:01 UTC)