News for hackers. Stuff that matters.
Re:Yep, I created the new Avatar font by gorkish on Monday May 09, 2022 @02:45PM (#31318137)
It's possible in PostScript to dynamically modify each glyph. Long long ago, I saw a small collection of typewriter and handwriting fonts that did this. This would have been back in the mid 90's or so.
Re:Yep, I created the new Avatar font by zimpenfish on Monday May 09, 2022 @03:57PM (#31318955)
I used a handwriting font with dynamic variations ~99-00 to generate address labels for someone entering competitions because printed labels were considered somewhat "cheating". Wasn't entirely convincing if you looked hard but miles better than 50 identical Times New Romans.
Re:Yep, I created the new Avatar font by NavinF on Monday May 09, 2022 @04:11PM (#31319116)
TIL postscript has an rng in the form of the rand function.

Assuming it’s widely implemented, it’d be hilarious to distribute files that replace their contents with a 4koma 1% of the time.

Re:Yep, I created the new Avatar font by capitainenemo on Monday May 09, 2022 @04:45PM (#31319479)
Is this related?

https://itnext.io/typescript-and-turing-completeness-ba8ded8...

I'd read this long ago, but my impression was that all the hinting stuff is auto stripped out of loaded web fonts for security/performance these days (maybe after some of those early font vulnerabilities that caused NoScript to block fonts), so most of us can't use it.

That's why I was wondering if ligatures might be a reasonable hack.

Re:Yep, I created the new Avatar font by gwern on Monday May 09, 2022 @05:33PM (#31320060)
You may not have an explicit rand(), but with the ligatures & substitution rules, you can add so much context sensitivity that no one will ever spot any duplications.

That's how you can do things like https://litherum.blogspot.com/2019/03/addition-font.html https://pagedout.institute/download/PagedOut_002_beta2.pdf#p... https://aftertheflood.com/journal/the-worlds-first-code-free... https://www.coderelay.io/fontemon.html (most of these will work in a browser). I've also suggested that you can create 'prank fonts' which add in subtle typos sporadically.

Less evilly, this is what calligraphy handwriting fonts do to get convincing variation.