return to table of content

Coding My Handwriting

Aeolun
14 replies
18h43m

I am really confused about the point of joining letters not matching up. The whole point of cursive to me is that you do not take your pen off the paper, so the way to join letters is built in. Author seems to have had issues because she’s not actually writing that way?

That said, I really enjoy the whole rest of this writeup for just being the simplest possible way you can go about drawing a bunch of letters on screen without messing with fonts :)

anamexis
10 replies
18h31m

The point, which the author discusses at length, seems to be that different letter pairs match up in different ways, which needs to be accounted for.

Aeolun
5 replies
17h49m

No they don’t. At least in my cursive writing. Line from end of last letter to beginning of next letter is always correct, since you don’t take your pen off the paper. That’s not different between the code and the reality.

If your letters look wrong it’s because you are starting them in the wrong place. Or because you take your pen off the paper. Letters either end in the bottom right or top right, and begin in the upper left. A straight line should always be correct.

The issue with the a that looks like an e is because the author is trying to start writing her a on the left side of the character.

anamexis
4 replies
17h41m

Obviously the letters connect, but where a given letter ends depends on the following letter, and where a given letter starts depends on the previous letter.

For example, in standard American cursive, b, o, v, and w have a top exit stroke, whereas the rest of the lowercase letters finish on the writing line. Combine this with the letter a, which has a top entry stroke, so the oa will join at the top, whereas ea will join from bottom to top.

Aeolun
3 replies
17h29m

I don’t see how this matters? They’re splines right? Just quickly writing those down I see a very minor variation in how they connect, but ultimately that variance’d be hardly noticable.

Regardless, the end of the o or e, to the beginning of a is still a straight line.

anamexis
2 replies
17h26m

The article gives explicit examples of where just connecting them with a straight line does not look right, and is noticeable.

Aeolun
1 replies
17h19m

Absolutely, and that’s how I can see that it has more to do with the form of the letter than the fact that joining without adjustment is impossible.

Anyhow, I doubt we’re going to convince each other here. Since the tool is right there I might just give it a try.

anamexis
0 replies
17h18m

At this point I'm not sure what we're disagreeing about :)

codingdave
3 replies
4h18m

I'm wondering if cursive has been taught differently over the last few decades -- I was taught in the 70s, and at that time the instruction was that letters always start and end at the same point. That instruction clearly does not match up to the article or some comments, but rather than quibbling over which of us is correct, I'm more curious how the teaching may have changed over the years?

Aeolun
0 replies
59m

For an extra data point, I was taught in 1995.

Zaner-Bloser looks the closest to what I was taught, but is not a perfect match.

I think I suffer from ‘what I was taught is correct’ syndrome. Of course multiple ways can be correct, but it certainly does address the ‘not matching up’ point

pushedx
1 replies
18h13m

every pair of letters join in a different way

it's similar to kerning with even non-joining fonts, you need to encode how various sequences of letters appear

euroderf
0 replies
6h45m

Is it possible to encode (in some existing program) for letter pairs where each code point is the right-hand side of the first letter of the pair plus the left-hand side of the second letter in the pair ?

I ask because upper-case Finnish has lots of really gnarly whitespace/kerning issues. Letter pairs like LJ and KY and YT and VY that could get special attention, even stroke joining, in a font such as I describe.

So a fragment like " KEVYT." could be encoded as (spc + lh-K), (rh-K + lh-E), (rh-E + lh-V), (rh-V + lh-Y), (rh-Y + lh-T), (rh-T + period).

devjab
0 replies
11h48m

The whole point of cursive to me is that you do not take your pen off the paper, so the way to join letters is built in.

This is both correct in the way you word it here, and, incorrect regarding your interpretation. The connection between letters in cursive is context-dependent. A “b” followed by an “a” or an “o” will likely have variations since it improves the readability of what you write. Similarly there are times where you might not want to keep the pen on the paper between letters within a word, which doesn’t break the “rules” of cursive.

You may have been taught differently and maybe your teachings were correct. I’m not aware of any form of cursive where connections are not supposed to be context-dependent though.

ch33zer
7 replies
21h54m

The art at the end is quite beautiful. I wonder if the next step is putting this into a real font so that you can type with it in any program...

ronsor
5 replies
21h33m

If you already have curves, you can do that quite easily (maybe tediously, if you have to/want to do it manually).

jacob019
4 replies
15h37m

Yes, but she uses different glyphs depending on which letters are next to each other, not sure if that is supported.

xp84
0 replies
2m

Yeah, even "normal" fonts have ligatures (a couple common ones in many fonts are fl and ti though they don't appear to be used in the font being used to render this comment), so this is definitely no technical obstacle if one really wants a font. Obviously a bunch of work to create, but pretty cool to have!

abdullahkhalids
0 replies
12h37m

Fonts have supports for that. I know that the Urdu Jameel Noori Nastaleeq font, has hundreds (maybe more) of complete words hardcoded into the font.

Ra8
0 replies
51m

Arabic language letters change based on their position in the word. And there's multiple fonts for it.

jacob019
0 replies
15h36m

Indeed, I love how she's blending technology and art here.

mgaunard
6 replies
9h49m

What I find most shocking is that this is not cursive at all, just print with some kind of cursive joinery.

s and z in particular look completely different in cursive, and b, f, l, k, and even h should also look quite different from this too. m and n are missing the extra arm.

Do Americans genuinely not know what cursive looks like? I understand it's been removed from their education for decades.

I do recognize however that the final result does indeed look quite close to natural print-style handwriting -- just don't call it cursive.

dhoe
1 replies
8h57m

It's just not cursive. This is not controversial, there was a huge debate ~15 years ago when cursive instruction was removed from the curriculum in the US.

xpe
0 replies
6h2m

What is the point of arguing definitions in this case? It seems you think one thing. The Wikipedia article says another.

Are you claiming there is only one internally-consistent way of defining terms? Hopefully not.

Do you think that definitions exist "out there" as objective realities? Hopefully not, as they exist in your head. On what basis is the definition in your head better than Wikipedia's? Or vice versa?

Are you claiming definitions are determined by authorities? Hopefully not. What do you think the editors of dictionaries themselves have to say about that? As I understand it, they view themselves as collecting popular usage.

Does popular usage serve as the "proper" and "fixed" definition? If so, does that mean usage {1, 10, 100, 1000} years ago was wrong?

Are you making some kind of statistical claim; e.g. "most people would think that cursive is..."?

The trope of "No, Thing X is not Y, see Source S" is rather myopic. There is often no disagreement once you speak clearly about what you _mean_.

mgaunard
0 replies
4h3m

Wikipedia itself calls it "semi-cursive".

bravetraveler
0 replies
8h29m

The joinery, and the lack of it, are what makes cursive, cursive. Also makes the definition nebulous.

Syzygies
0 replies
3h19m

Various childhood experiences convinced me that adults were stupid. One was wearing a belt I didn't need, because that's what one did, and scratching my Dad's guitar. This cost me a career of sex, drugs, and rock and roll.

I rejected cursive after one year, reverting to printing despite all pressures. I couldn't see any upside to cursive. It was harder to read, a concession to lazy adults with poor motor control. A few years later I won a penmanship contest.

What I want to do with these ideas is automate turning computer-generated animation into animation with a hand-drawn life, using machine learning to tune the parameters to express my tastes.

This is all connected: My brother and I were fascinated when we learned how animation worked. I then found myself deathly bored in an hour of school penmanship printing practice, so I worked on animating letter F's turning into letter G's, and so forth. The teacher left me alone until other kids asked what I was doing, and I taught them. She swiftly collected all papers, went to get a primitive projector that barely escaped incinerating our work, and praised various students' penmanship. My collaborators were trembling that they'd be chosen next. We didn't yet understand that one attempts to stop a revolution by cutting off the head.

I was stunned to realize that the ridicule didn't hurt. These experiences helped me learn to think independently as a mathematician.

deanresin
3 replies
11h46m

This is really cool. I would love to have that power of typing my handwriting.

petepete
2 replies
8h23m

My handwriting is crap, I'd much rather type hers!

BanazirGalbasi
1 replies
5h5m

Improving your handwriting is pretty simple, it's just mildly time consuming. I journaled for a month and just focused on how I wrote each letter. At first it took me half an hour to fill an A5 page - but my handwriting looked so good! It only took a month for my muscle memory to pick up the adjustments, and now I can write quickly and legibly in cursive.

I tell everyone who mentions bad handwriting the same thing. Buy a cheap journal, grab a pen you like, throw on something to listen to (music, a podcast, the news, a game stream, could be anything) and just write. What you write doesn't matter, just focus on putting down each letter exactly as you want it to look, and take your time.

monknomo
0 replies
2h25m

I did the same thing, and really focused on opening up loops and getting ascenders and descenders straight, and it made a huge difference

I just picked one of those all the letters in one sentence phrases and practiced on that during phone calls

Sphinx of black quartz judge my vow

tombert
2 replies
15h51m

I am pretty convinced that coding my handwriting could be considered a one-way hash; there is no way to decipher what the hell I was trying to say when reading it.

Xeyz0r
0 replies
21m

That's a good one!

kibwen
2 replies
19h23m

I wonder if anyone's tried making a joined-up monospace font before.

srik
0 replies
18h22m

Toshi Omagari’s Tabulamore is the most gorgeous connected monospace font I’ve seen so far. The rest of the fonts in that tabular type collection aren’t connected but still pretty good fonts and they’re all steals at the price he has them listed.

https://fonts.ilovetypography.com/fonts/tabular-type-foundry

betenoire
1 replies
18h44m

that's cool, I wish I had writing good enough to want my own font :)

< 14.5, but if I switch this to a default size of 200, the point could be defined as 145, removing one character (the decimal place).

I see a function called "adjust". I don't know font specs, but what if this were serialized differently? 0,{x:12.2,y:13.2} -> 0,[12.2,13.2] and transformed in the "adjust" function?

naikrovek
0 replies
1h18m

Like any skill, handwriting can be improved with a bit of effort.

vessenes
0 replies
19h14m

Type nerd reading the first part of the article "ugh oh my god the kerning oh ouch"

Nerd reading the whole article and looking at the crazy cool letter-form art at the end "wowwww".

Worth reading the whole article just to look at what an artist is doing with her tools from start to finish!

robertclaus
0 replies
57m

It was interesting to read the comments about how many different cursive styles there are.

naikrovek
0 replies
4h52m

this is awesome, and some excellent eye-bleach against the 3M article I just read.

metadat
0 replies
17h43m

It would be tough to model and/or mollify my handwriting in code or even ML because it really just depends on the day, and that's not usually a model input ;D

(TL;DR: it's somewhat inconsistent)

maCDzP
0 replies
10h24m

Cool project using Processing, I’ve always wanted to play with that.

kentosi-dw
0 replies
37m

This is pretty amazing. I would love to get my hand-writing as a font!

firewolf34
0 replies
21h24m

Wow, that bit at the end really sold it. Very cool

certik
0 replies
4h36m

Beautiful! I would like to see more cursive handwriting fonts. Here is my contribution from 2 years ago:

https://certik.github.io/slabikar-otf/

calini
0 replies
5h55m

This would have been SO useful in school!

asp_hornet
0 replies
11h27m

An awesome project and great write up. This is what i come to HN to see.

Xeyz0r
0 replies
13m

I'd be lucky to have it during my school time

Brajeshwar
0 replies
15h18m

Awesome find. https://www.amygoodchild.com/blog

The HN homepage has two brilliant articles from Amy. The website is now on my RSS Watchlist. There are quite a few interesting articles about the soothing existence between Art and Programming.