Live Font Interpolation on the Web

Dave Crossland
Dave Crossland Posts: 1,431
edited January 2015 in Type Design Software
http://alistapart.com/article/live-font-interpolation-on-the-web calls for a discussion in this forum about 'live' interpolation of web fonts, and a demo is provided at http://aetherpoint.com/lab/interpolation/

I'm very happy to see this idea get wider circulation, and that the demo uses similar technology as the demo the metapolator community developed at http://metapolator.com/index_old.html last year; also the www.prototypo.io developers have made http://byte-foundry.github.io/plumin.js/ which seems to have long term potential :)

Looking forward to Nick's article out on Friday - click through to twitter to see the replies including Adam Twardoch's reminder about http://lists.w3.org/Archives/Public/public-webfonts-wg/2013Jun/0024.html :)





Comments

  • attar
    attar Posts: 209
    edited January 2015
    I've got to question though: we let down run-time interpolation (Multiple Masters) on our offline software long ago and it seems we live fairly decently without it; so why would we want it on the web? – with the web we already struggle to get print weights to display properly and consistently so.
  • Dave Crossland
    Dave Crossland Posts: 1,431
    edited January 2015
    I think the primary benefit of pressing concern to tech companies is the compression benefit. Consider a 9 weight, Roman/Italic family, and the latency of transferring 4 masters and instantiating them into 18 instances, versus transferring those 18 instances - or a 9 weight, 5 width family with 8 masters versus 45 instances - or a 9 weight, 5 width, 4 optical size family with...
  • But what about the hinting? Postscript hints can be interpolated bit it is not optimal for text sizes on windows. Ans as far as I can tell interpolating TT instruction is not possible.
  • Well, if the hints are both the same on the same feature, then maybe they don't have to be interpolated.;) the values all interpolate fine. In fact! I remember GX so I know this is okay man, stay cool.

    Compression is best solved elsewhere, I think, so, maybe the tech companies will be disappointed in just better lookin stuff. In fact, I'm really curious if this will happen, from the type industry, just for 'faster', and not for 'prettier.'
  • Well, if the hints are both the same on the same feature, then maybe they don't have to be interpolated.;) the values all interpolate fine. In fact! I remember GX so I know this is okay man, stay cool.
    And how do you plan to interpolate the prep table?
  • Deleted Account
    Deleted Account Posts: 739
    edited January 2015
    Georg, prep is not really going to be interpolated. I think the "I" term is running a bit wild. If such a technology were going to be reinvented similar to the previous ones that worked...there are new tables containing variation-specific CVT data that feeds the prep properly. 




  • I agree with Adrien. Web designers are barely able to set type now (ultralight body copy?) and now we want more ways to make bad typography?

    For the handful of designers who would use this properly, there will be 10 more who won't. (Possibly and not excluding me.)
  • Dave Crossland
    Dave Crossland Posts: 1,431
    edited January 2015
    Dan: The majority (50%+) of web pages are not using web fonts at all, its true. But the typographic sophistication of the web pubishing masses is improving, albeit slowly. 

    Isn't that what computers are for? :) Even, new technologies :) The pre-digital typographers and type designers certainly had this concern about the evil "A" axis of the Apple LaserWriter, Adobe PostScript, Aldus PageMaker and Altsys Fontographer :) 


  • Yes, evil. All the proprietary fonts that were made led us to the current "dark ages".
  • I'm no luddite, I want to have great typography on the web. I'm still counting my blessings that I don't have to use Georgia and Verdana for everything. Push the boundaries, by all means.

    I just have no faith that I won't want to gauge my eyes out in the uncertain future.
  • Dave: 50%+ of webpages? Circa 25% of the Quantcast top 1 million websites probably.
  • Dave Crossland
    Dave Crossland Posts: 1,431
    edited January 2015
    Lars: URL? :) I'm quoting http://httparchive.org/trends.php?s=Top1000 'Sites with Custom Fonts' graph, 4/5th down the page
  • Nick's article is up! 

    http://alistapart.com/blog/post/variable-fonts-for-responsive-design

    At the end he writes,
    Okay, I’m sold. What should I do now?
    Experiment with things like Andrew Johnson’s proof-of-concept demo. Read up on MutatorMath. Learn more about the inner workings of digital fonts. Get in touch with your favorite type foundries and tell them you’re interested in this kind of stuff. Then get ready for a future of responsive typography.

    I think that often responses to this topic are that the type community must rely on web browser developers to do something, much like relying on desktop software developers to do something in the past; for example looking back to the MultipleMasters and TrueTypeGX formats from the 90s and suggesting they be revitalized. 

    However, I think that as Andrew's proof of concept shows, we don't need to wait for browser developers - their vision can be realised purely in JavaScript, if someone extends http://nodebox.github.io/opentype.js/ to take as input 2 interpolatable fonts and output a working instance. As noted in the articles, this would be better for CFF than TTF. 

    On twitter, Kris Sowersby asked

    and you're sure the extra interpolation computational load is less that simply serving a font file?

    and Nick replied

    Like many things on the web it depends on the complexity of changes, amount of text, speed of processor, etc.

    I think we can already see that the speculative table comparing 6 singleton fonts vs 4 interpolation-master fonts has promise, from http://byte-foundry.github.io/plumin.js/

    Plumin.js is a friendly API around opentype.js, and http://byte-foundry.github.io/plumin.js/bugreport.html shows an animation example running in Chrome bug free (the page is a bug report for Firefox :) 

    The appearance of animation on this page is an illusion; in fact each frame of the animation is a new font being generated and loaded and rendered by the browser. Well, the font has just 3 simple glyphs, but this seems promising to me. 

    If an opentype.js based interpolator is written, then the proof of demand for what Nick and Andrew have expertly explained can be shown with JavaScript. If it proves untenably slow in JS, browser developers would see the proof of utility and someday implement support for similar technology natively... but I'm optimistic that JS will be fast enough.

  • Dave: That's just taking 482203 pages into account (Dec 2014), which is just like 0.0005 percent of "web pages"  ;) 
  • James Puckett
    James Puckett Posts: 1,996
    edited January 2015
    In today's type design tools interpolation can be almost instantaneous. But compiling fonts takes a few seconds-especially for complex scripts—and auto-hinting takes even longer. I can't imagine Asian Windows users waiting for several multi-script fonts to be compiled and auto-hinted.
  • Andrew Johnson
    Andrew Johnson Posts: 14
    edited February 2015
    @James Puckett – Valid concerns. We're not suggesting this as a replacement to traditional fonts though. Users on low power/resolution devices would probably still be best served with standard screen webfonts, or even default fonts if the network is slow enough.

    There's a number of ways to load fonts quickly (subsetting, caching, compression, etc), and there are people working around optimizing these. Hopefully, there'll be a lot of different proposals (ideally Javascript based solutions leading to more robust font formats). Maybe they'll have to be a Matrix or two to meet in the middle. DJR's typeface seems to do that.

    Just wanted to suggest it as a more sustainable and precise solution for all these contexts we're designing for.