Is it possible?

itsluke's picture

Hello fellow typophiles,

I am looking for a bit of advice/knowlage and hoped that some of you might be able to point me in the right direction...

I am a student at Kingston University and am currently trying to develop an experimental typeface based upon information getting corrupted/changed the more its reproduced. For this I have started creating a typeface whos letterforms change depending on how many times you use them.

In order to do this I am currently in the process of designing about 50-60 varients of the font and I wondered if anyone knew of a way to have the font change which varient it selects based on how many times its been used e.g. the 6th time a letter g gets used it would uses varient 6 of letter g.

I don't know if this is possible or not but I thought I would see if anyone on here had any suggestions/advice.

Thanks

Typedog's picture

Yeah the letters do start to change when I take the last chronic hit. All kidding aside, how can you create something you are not even sure exist? Sorry you don't make sense or at least to me you don't.

Guerrizmo+Design

Miss Tiffany's picture

This is a question for the BUILD section. I'll move it over for you.

nina's picture

In keeping with your theme, it might be more interesting not to manually design fifty variants of the font, but design the variables that then change/deteriorate it "automatically". Just a thought.

SebastianWolf's picture

Hi itsluke

Robert Bringhurst's 'The Elements of Typographic Style' has a great little discussion of exactly what you're talking about in Section 9.3.2: Manual, Random and Programmed Variation. He uses the example of a typeface called Beowolf by Fontshop, which uses a small program embedded in the font to introduce random variation to the letterforms.

From what I understand, OpenType fonts can contain embedded programs that can achieve what you're thinking of. You'd have to create a small program to count how many times the face has been called upon for a certain letterform, and introduce greater variation the more times the character has been called. I don't know the technical details or limitations of OpenType, but I think it can be very flexible.

So, look into OpenType, Beowolf and snatch a copy of Bringhurst out of the Uni library.
Hope this helps,

Sebastian

Atif's picture

Is there any further comments on embedding a program in OpenType fonts. I never heard such thing before. Any further references. Thanks

exfish's picture

OpenType has an internal scripting language, which allows you to program features for it. Unfortunately, it's not a complete programing language. It's mostly for specifying glyph substitutions and positioning info. No variables, no arithmetic, no fancy stuff. I'm facing a similar problem, trying to code a font that can change optical size automatically (through glyph subs) depending on what size a text is set in. We're both trying to make a font do things based on external factors, which I don't think OpenType can handle without a lot of hacking.

When Erik van Blokland and Just van Rossum designed Beowulf, they did all the coding in PostScript, which is a real Turing-complete programming language. Their code was being run by the output device, i.e. the printer. If you're working on a font designed for the screen, this may not be helpful.

Best of luck...if you figure anything out, let us know!

—Noam

Rob O. Font's picture

>Best of luck...if you figure anything out, let us know!
There are several threads on the topic of randomization. There are also topics on interfaces to such things, and how they might look. As for figure anything out, the controlling consensus on this kind of wild-assed font behavior in OT is "Who needs it?" with undertones of "We don't want any complicated and possibly buggy fonts out there blue-screening our pristine operating system and/or application program performance with wild-assed font behavior!"

In any case, the variations you are talking about here are not yet clear, can you clarify the kind of user and reader experiences you wish to create?

Cheers!

John Hudson's picture

OpenType has an internal scripting language, which allows you to program features for it

I wouldn't go so far as to call it a scripting language. OpenType has some layout tables with specifically defined lookup types for glyph substitution and positioning.

blank's picture

I recently designed a pseudo-random Opentype font that cycles through three subsets. I started using Thomas Phinney’s code :

feature calt {
lookup rotate {
sub @default @default' by @alt1;
sub @alt1 @default' by @alt2;
etc ad infinitum
} rotate;
lookup rotate;
} calt;

The Phinney method worked, but Indesign flakes out and will occasionally disable CALT at the beginning of a line after a series of lines cycling like this. In Illustrator CALT is off by default, and in many programs it’s simply unsupported. So Silas Dilworth came up with the brilliant idea of writing a PHP script to build a cycling engine based on LIGA. It works very well, and is supported by a lot more software. The downside is that for a 1144 character font there are 1536 lines of LIGA code. It also tends to chug along in some apps. I honestly don’t know how it works so you’ll have to get in touch with him (try Facebook) for an explanation.

Something you need to consider before you go too far with this project is the number of glyphs and file size. If you do 60 permutations of a 256-character font you’ll have over 15,000 glyphs, if you’re adding lots of points to change the shapes that means you’ll end up with a pretty big file and won’t be able to master the font in Fontlab (but you could do it with Fontforge, Asia Font Studio, AFDKO or combinations of them). I have no idea what kind of software problems you’ll run into with a font that big, but plan ahead and assume you’ll run into some.

SebastianWolf's picture

I've gotta say I never knew OpenType could be so interesting.
James Puckett, what's the language for the OpenType script? I'm assuming it's not a proprietary one.

blank's picture

Opentype is really it’s own language. Or, as John pointed out, it’s really just layout tables. But combine those layout tables with classes and one can do a great deal. It’s all pretty simple stuff. Unfortunately the documentation isn’t so simple, so it’s usually best to just look at the code in Adobe fonts to see how it all works.

Thomas Phinney's picture

There's the compiled code, which is defined in the OpenType spec. But what you're seeing above is source code, in the AFDKO feature language, which is also used by FontLab and DTL FontMaster.

Cheers,

T

exfish's picture

As for figure anything out, the controlling consensus on this kind of wild-assed font behavior in OT is “Who needs it?” with undertones of “We don’t want any complicated and possibly buggy fonts out there blue-screening our pristine operating system and/or application program performance with wild-assed font behavior!”

...and the distinct whiff of "Get off my lawn, you damn kids!" ;)

There are plenty of reasons for playing around with this stuff. Sure, the results will be buggy at first and maybe somebody's file might crash (serves 'em right if they weren't hitting save regularly), but nothing ventured nothing gained, amigos. I for one am interested in reintroducing the subtle imperfections of analog print through digital means, which is why I'm pursuing OpenType randomness (though I'll settle for regular cycling). As Part of my grad thesis I'm looking into ways that digital type can reclaim ground lost to photo and hot metal. It would be nice if a font could adjust itself optically according to point size, especially on the web or mobile devices. there's plenty we can make type do, and no reason to let it stagnate simply because people don't want to deal with the inconvenience of experimenting.

John, you are certainly right about "scripting language" being a bit f an undeserved complement to the AFDKO feature language. If only the powers that be had decided to make digital fonts be actual programs instead of mere system extensions...

I wonder what it would take to make fonts more powerful. OpenType offers a lot of flexibility, but the inherent status of fonts on modern operating systems is holding them (and us) back.

—Noam

blank's picture

I for one am interested in reintroducing the subtle imperfections of analog print through digital means…

When I was working on Black Monday I started by spending a tremendous amount of time distressing type by hand. It was a waste of time. I realized that in the digital realm, all you can ever do is simulate. Vector type will never come close to the imperfections of metal type. Massive photofonts with character randomizers and baseline randomizers and anything else anyone thinks of will never convince anybody that they’re metal type. Things get more interesting when we just embrace the digital size of things and exploit all the great stuff digital type gives us instead of trying to recreate a technology that has as beauty all its own.

I wonder what it would take to make fonts more powerful.

For the most parts fonts don’t need to be more powerful, the end-users just need to do a better job setting their type. The answer to optical sizing is not having OpenType do it automatically, it’s getting designers who don’t even know how to use old-style figures to RTFM. Making all this stuff automatic will not, for the most part, make typography better, it will just create more headaches because of all the people who don’t understand what’s going on.

Ricardo Cordoba's picture

In case anyone wants to read about Beowolf, mentioned above:

http://typographica.org/001134.php

http://www.letterror.com/

Syndicate content Syndicate content