Simon Willison’s Weblog

Subscribe
Atom feed for fonts

11 items tagged “fonts”

2024

llama.ttf (via) llama.ttf is "a font file which is also a large language model and an inference engine for that model".

You can see it kick into action at 8m28s in this video, where creator Søren Fuglede Jørgensen types "Once upon a time" followed by dozens of exclamation marks, and those exclamation marks then switch out to render a continuation of the story. But... when they paste the code out of the editor again it shows as the original exclamation marks were preserved - the LLM output was presented only in the way they were rendered.

The key trick here is that the font renderer library HarfBuzz (used by Firefox, Chrome, Android, GNOME and more) added a new WebAssembly extension in version 8.0 last year, which is powerful enough to run a full LLM based on the tinyllama-15M model - which fits in a 60MB font file.

(Here's a related demo from Valdemar Erk showing Tetris running in a WASM font, at 22m56s in this video.)

The source code for llama.ttf is available on GitHub.

# 23rd June 2024, 3:39 pm / llms, generative-ai, ai, fonts, webassembly

2020

Amstelvar (via) A real showcase of what variable fonts can do: this open source font by David Berlow has 17 different variables controlling many different aspects of the font.

# 17th November 2020, 3:24 pm / typography, fonts

CoronaFaceImpact (via) Variable fonts are fonts that can be customized by passing in additional parameters, which is done in CSS using the font-variation-settings property. Here’s a ​variable font that shows multiple effects of Covid-19 lockdown on a bearded face, created by Friedrich Althausen.

# 15th November 2020, 10:41 pm / css, fonts, covid19, typography

2010

Pictos. Here’s something new: a for-sale font containing a set of beautiful royalty-free icons (like Wingdings, but good) designed to be embedded in web applications using @font-face. Small file sizes, scalable vectors without SVG. Not sure about the accessibility implications though.

# 17th August 2010, 8:54 pm / fonts, pictos, webfonts, recovered

Repolygonizing Fonts (via) Part of Scribd’s fascinating series of posts explaining how their document conversion technology works.

# 30th June 2010, 1:04 pm / fonts, scribd, recovered

Google Font Directory: Font Preview. Handy tool for trying out the 18 open source fonts Google have released, along with server-side browser sniffing technology that serves up the correct version (including for IE6). The browser sniffing makes me a bit uncomfortable—will it play well with intermediate caches? What happens if I save a local copy of a page and then open it up in a different browser?

# 20th May 2010, 3:20 pm / fonts, google, sniffing, webfonts, recovered

2009

Firefox 3.5 for developers. It’s out today, and the feature list is huge. Highlights include HTML 5 drag ’n’ drop, audio and video elements, offline resources, downloadable fonts, text-shadow, CSS transforms with -moz-transform, localStorage, geolocation, web workers, trackpad swipe events, native JSON, cross-site HTTP requests, text API for canvas, defer attribute for the script element and TraceMonkey for better JS performance!

# 30th June 2009, 6:08 pm / firefox, html5, dragndrop, audio, video, offlineresources, fonts, textshadow, csstransforms, localstorage, geolocation, webworkers, json, crossdomain, canvas, tracemonkey, javascript, performance, browsers, mozilla, firefox35

cufon. A promising alternative to sIFR, cufon uses VML on IE and canvas on other browsers to render custom fonts in the browser. You have to convert your font to JavaScript first, either using their free hosted tool or by installing the FontForge based server-side script yourself. The JavaScript encoded font file uses VML primitives to improve IE performance; the JavaScript library converts that to canvas calls for other, faster browsers.

# 6th April 2009, 10:29 pm / cufon, browsers, fonts, vml, ie, fontforge, sifr, typography, canvas, javascript

Facing up to Fonts. Slides and notes from Richard Rutter’s excellent typography presentation at a recent SkillSwap Brighton. Includes some new thinking about the font stack (comma separated list of fonts provided to the font-family property) you should use to get the best possible implementation of a given font on various different platforms.

# 9th February 2009, 9:16 pm / fontstacks, richard-rutter, skillswap, skillswapbrighton, fonts, typography, design

2008

typeface.js. Outstanding hack—renders custom fonts using VML in IE and canvas in everything else, using fonts that are defined as a set of vector paths stored using JSON.

# 27th October 2008, 11:45 pm / fonts, typefacejs, canvas, javascript, json, vml, typography

2007

JavaScript/CSS Font Detector (via) Really clever trick: detects the fonts that you have installed by writing out some text and measuring its dimensions.

# 20th March 2007, 11:20 pm / javascript, css, fonts