Today I'm learning that making fonts is difficult

· · Web · 3 · 0 · 3

I'm trying to make a glitchy variable font using open source tools that work on linux. What I'm trying to achieve is something like this from a video I made many years ago

There's a very handy guide on making variable fonts using fontforge and other tools

but when I run fontmake it complains about the two fonts having different number of segments (they have the same amount of points).

I think I'm gonna have to manually fix it or manually glitch it. Gonna take a looooooooong time

Back on this again, this time coming across ctrlcctrlv's second method for creating variable fonts

If I could find a way to import all glyphs from one font as a new layer on corresponding glyphs on another font then this potentially could be a way to automate the creation of a glitch variable font. Sadly I don't think this is possible in the gui itself.

I'd have to learn how to automate it and I don't want to do that now (no time).

Another issue is that the essential creation and renaming of layers (need one called "End State") isn't possible as, for me, when entering a layer name certain letters are interpreted as tool shortcut keys.

"s" and "a" are shortcuts and so it comes out as "End tte". Argh!

Any other Fontforge users getting this?

I now have a process that works. I'll probably write a blog post about it but in short it involves first "sanitising" a font by opening and reexporting it in Birdfont, and then opening in fontforge.

In fontforge I then "randomly" move points in the curve, taking care not to change the curve type.

After modifying each glyph I run scripts linked in this tutorial video to make sure that I haven't messed up the file.

I have an idea for how to automate this. If the font only has sharp edges then, in theory, running the svg glitch script on it will keep the same curve type.

Will come back to this later in the year

@paperdigits @n8 if he can that would be great! I'm afraid of asking on mailing list/software support forums as I know I'm misusing the software and fonts

@hellocatfood If I understand it correctly, you can use #openFrameworks to convert characters from TrueTypeFont into a mesh or a path. Then you could manipulate the vertices in the path or in the mesh. And then draw them on the screen.

But then you haven't changed the font file and you don't have a new font for the word processor. It is more suitable for animations.

@hellocatfood Ah yea, I learned that lesson once. It was a rough one.

Sign in to participate in the conversation

A fediverse community for discussions around cultural freedom, experimental, new media art, net and computational culture, and things like that.

<svg xmlns="" id="hometownlogo" x="0px" y="0px" viewBox="25 40 50 20" width="100%" height="100%"><g><path d="M55.9,53.9H35.3c-0.7,0-1.3,0.6-1.3,1.3s0.6,1.3,1.3,1.3h20.6c0.7,0,1.3-0.6,1.3-1.3S56.6,53.9,55.9,53.9z"/><path d="M55.9,58.2H35.3c-0.7,0-1.3,0.6-1.3,1.3s0.6,1.3,1.3,1.3h20.6c0.7,0,1.3-0.6,1.3-1.3S56.6,58.2,55.9,58.2z"/><path d="M55.9,62.6H35.3c-0.7,0-1.3,0.6-1.3,1.3s0.6,1.3,1.3,1.3h20.6c0.7,0,1.3-0.6,1.3-1.3S56.6,62.6,55.9,62.6z"/><path d="M64.8,53.9c-0.7,0-1.3,0.6-1.3,1.3v8.8c0,0.7,0.6,1.3,1.3,1.3s1.3-0.6,1.3-1.3v-8.8C66,54.4,65.4,53.9,64.8,53.9z"/><path d="M60.4,53.9c-0.7,0-1.3,0.6-1.3,1.3v8.8c0,0.7,0.6,1.3,1.3,1.3s1.3-0.6,1.3-1.3v-8.8C61.6,54.4,61.1,53.9,60.4,53.9z"/><path d="M63.7,48.3c1.3-0.7,2-2.5,2-5.6c0-3.6-0.9-7.8-3.3-7.8s-3.3,4.2-3.3,7.8c0,3.1,0.7,4.9,2,5.6v2.4c0,0.7,0.6,1.3,1.3,1.3 s1.3-0.6,1.3-1.3V48.3z M62.4,37.8c0.4,0.8,0.8,2.5,0.8,4.9c0,2.5-0.5,3.4-0.8,3.4s-0.8-0.9-0.8-3.4C61.7,40.3,62.1,38.6,62.4,37.8 z"/><path d="M57,42.7c0-0.1-0.1-0.1-0.1-0.2l-3.2-4.1c-0.2-0.3-0.6-0.5-1-0.5h-1.6v-1.9c0-0.7-0.6-1.3-1.3-1.3s-1.3,0.6-1.3,1.3V38 h-3.9h-1.1h-5.2c-0.4,0-0.7,0.2-1,0.5l-3.2,4.1c0,0.1-0.1,0.1-0.1,0.2c0,0-0.1,0.1-0.1,0.1C34,43,34,43.2,34,43.3v7.4 c0,0.7,0.6,1.3,1.3,1.3h5.2h7.4h8c0.7,0,1.3-0.6,1.3-1.3v-7.4c0-0.2,0-0.3-0.1-0.4C57,42.8,57,42.8,57,42.7z M41.7,49.5h-5.2v-4.9 h10.2v4.9H41.7z M48.5,42.1l-1.2-1.6h4.8l1.2,1.6H48.5z M44.1,40.5l1.2,1.6h-7.5l1.2-1.6H44.1z M49.2,44.6h5.5v4.9h-5.5V44.6z"/></g></svg>