Shaun Inman developed Inman flash replacement as a method of replacing generic type in webpages with a user specified Flash based replacement. Mike Davidson and Mark Wubben took Inman's concept and made it scalable, renaming it sIFR.
The technique works by embedding a font in a flash swf movie and using javascript to call on that swf to replace selected html elements. The element below is a <h5>, which would normally be displayed in Cambria. The javascript replaces the text in the h5 and replaces it with dynamically created glyphs from the swf file. The text remains selectable and accessible.
This text is set in Typo Slab Serif using sIFR
This approach relies on the user have the Flash plug-in installed and JavaScript enabled. If either is absent, the type degrades to whatever is specified in the CSS.
The sIFR zip unpacks to a number of files, comprising a .fla (Flash) a CSS file, two javascript files and some supplementary files. The .fla file must be opened and its original font changed to the desired one. A .swf file is then exported which contains the required glyphs. If specialised glyphs are needed the embed function in Flash can be used. The sifr-config.js file then needs to be edited to reflect the name of the exported swf file. Finally, a few lines of javascript are pasted to the html page. Note: the javascript links must come after the links to the global and sifr stylesheets. There are many tutorials detailing the above, many of which did not work for this author. This writer found Mark Wubben's tutorial be be the most straight forward. SIFR is nonetheless awkward to set up. It requires Flash Studio to edit the .fla and export the .swf (or there is an online generator here), knowledge of HTML, CSS and JavaScript and will not work locally due to security settings in the Flash plug-in. It does not work with every font; many tried by this author did not display, and of those that did some rendering glitches remain.
In the example above, the capital T had its' left serif truncated; adding a 3px left-margin in the sifr-config.js file solved this. The window mode is also set to transparent to allow the html background colour to show through, but this does not work with the sans-serif toggle.
In practice using sIFR can cause slower load times, because of the increased number of server calls for the various JavaScript, Flash and CSS files, even though the files themselves are quite compact. It also has a processing overhead as the browser has to parse the flash files. This makes it particularly unsuitable for large bodies of text, although it works quite well as a heading replacement. Possibly the biggest argument against using sIFR comes for Mark Wubben himself —
Given that we’re well into 2011 at the time of writing, you should really think twice about deploying sIFR.
Instead, have a look at Typekit or Fontdeck.
There hasn't been an update to sIFR since October 2008, and consequently it’s probably riddled with bugs.
Seriously, don’t use it. It’s unsupported software.
― Mark Wubben, novemberborn.net/sifr3
In summary
In practice sIFR is awkward to implement and does not work if either JavaScript is disabled or the flash plug-in is absent. It is also unsuitable for body copy. The difficulty of implementing sIFR prompted the development of Cufón.