Home > front-end development, typography > Chrome and @font-face: It's here!

Chrome and @font-face: It's here!

September 25th, 2009
January 25, 2010: It is now in the stable Chrome release! The wait is over, everyone. :) [release notes]

Today, Zeldman issued an ultimatum that we've all been feeling recently:
Chrome needs to support @font-face immediately.

It's true, every major browser supports @font-face:

  • Internet Explorer: since IE5
  • Firefox: since FF3.5
  • Safari: since Safari 3.2
  • Opera: since Opera 10

But..
Google Chrome currently does not enable @font-face linking to ttf and otf.

It actually does support SVG fonts in a @font-face declaration. View this demo in Chrome or Chromium to see svg fonts in action. Divya has some great research around fonts and SVG if you're interested in more.

You can turn it on, at will

You can enable web fonts with an executable switch: −−enable-remote-fonts.

On Windows, you can tweak the shortcut path, like so.
With Chromium on OS X, you use Terminal to launch:

/Applications/Chromium.app/Contents/MacOS/Chromium --enable-remote-fonts

With proper Google Chrome on OS X, you need to escape the spaces:

/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --enable-remote-fonts

With Chromium on Linux[1]:

chromium-browser --enable-plugins --enable-remote-fonts %U

Once you enable it, all @font-face stuff works just as you'd expect, including the bulletproof @font-face syntax [demo] and the Nice Web Type demos.

But we need web fonts working by default

Wait, so why is this wonderful feature disabled by default? Security review. Ian Fette, the program manager of Chrome, indicated that they need to explore how do webfonts in a "reasonably safe manner". So that's the holdup.
This ticket on the Chromium bug tracker tracks the feature being enabled by default.

Okay, so when do we get our toy? Soon, in fact!

Chrome is my default browser, so my patience on this issue ran dry recently. I emailed Takuya, an engineer at Google Japan, who is working on this and he said:

We are almost done. The code is under review internally within Google. I'm expecting to make it public no later than a week or so.

So I expect we'll be seeing @font-face support enabled by default in the Chrome dev builds soon. Based on their release schedule I think it'll be near the end of the year when we see it in Chrome stable. That's good news; let's hope we see it sooner.

2009.10.19 : The ticket tracking @font-face on by default gained the Milestone-4 label, indicating it will be included in Chrome 4 Stable.

2009.11.04: The Chromium team has released ots - an OpenType sanitizer library meant to clean any security concerns from a font file included via @font-face. They have also filed a bug upstream with WebKit to integrate this code at the Webkit level. Finally we see the fruit of their security review.

2009.11.18: Remote fonts are now enabled by default!!! This should only be in the dev builds for now. I'll update when it makes it to beta builds and eventually the stable. But right now it still looks like we'll see this in version 4 stable. (Nov 21: confirmed its in dev builds.. starting with version 4.0.249.4 [blog post], [rev 32300])

2009.12.09: @font-face support is now in the Chrome Beta of both Windows and Mac.

2010.01.25: @font-face support is now in the Windows Chrome Stable release! [release notes]

Paul Irish front-end development, typography

  1. #1

    Oh, and Chrome Frame:

    Currently @font-face doesn't work in Chrome Frame, and I know no way to enable it, as you can't really pass an executable switch to a Browser Helper Object.

    So using Chrome Frame means you won't get any rich type with @font-face, which sucks. However it's still beta, and I believe it's using the dev branch of Chrome, so when @font-face support makes its way into the dev branch, I think we'll see it in Chrome Frame soon.

  2. #2

    That is good news, indeed. The web has every right to be as font-rich as traditional media. Just gotta convince the foundries of that.

    I know Safari 4 supports @font-face, but what's the status of iPhone Safari? Are we just using Cufón for mobile?

    It often seems there's a disconnect when people plan for the future. You hear "The future of the web will have…" and "Mobile is where the web is going", but the two hardly ever line up.

  3. D Ross
    #3

    @Russell Uresti
    Russell, you're trying to sound like you know more than you really do.

  4. #4

    With all due respect to Google, I don't believe @font-face is a security issue. That doesn't make any sense. Safari is a Webkit browser and it's had @font-face support for two years.
    My bullshit alarm is going off.
    I believe it's a legal issue.
    Chrome Frame is a very bold back-door assault on MSFT. And Google knows perfectly well how MSFT feels about their investment in fonts and their opposition to linking to "raw" font files. If Chrome Frame were to circumvent that, it might just be the straw that breaks the camel's back.
    I think they are gauging Microsoft's reaction before proceeding further.

    Just my 2 cents.

  5. #5

    @Richard Fink
    I think you're reading a little too far into the 'security issue' comments. Remember, even full Chrome (which really has nothing to do with Microsoft) doesn't have @font-face enabled by default, not just Chrome Frame.

  6. #6

    Why?! It exists typekit and I can't see their great fonts because of this on chromium! :-/

  7. #7

    Am I using some kind of magic version of Chrome 3.0?
    @font-face works just fine for me. Not sure if it's grabbing EOT or TTF, but then again IE doesn't support TTF as far as I know.

  8. Peter
    #8

    This is strange, but chrome 4.0.249.22 on Linux actually freezes at any typekit site that I can find, just stalls out and sits there. Not sure where I can register this as a bug, pointers welcome.

  9. #9

    @Peter
    I'd file it on their get satisfaction support site: http://getsatisfaction.com/typekit

  10. #10

    So Chrome has web fonts now but the implementation is buggy. See http://soukie.net. Firefox and Safari render italics correctly but Chrome does not. Not sure if they have a bug tracking somewhere.

  11. #11

    @Pavel Soukenik
    It'd be awesome if you made a test case and filed a ticket for it:
    http://code.google.com/p/chromium/issues/list

  12. #12

    @Paul Irish, done. I have filed the bug #35739. (And also #35737 which is coming from webkit but nobody has reacted to my report in Bugzilla since September.)

  13. Jasim
    #13

    Hi paul,

    Google chrome supports @fontface for many english font types..
    like http://www.fontsquirrel.com/fontfacedemo/Cloister-Black

    but for language malayalam it doesn't seem to download ttf files :(.. look @ the site http://www.mathrubhumi.com/ it renders perfectly with firefox and IE with webfonts. but fails in Chrome. Do u have any solutions?

  14. anon
    #14

    just wanna say that the first time you load a page with @font-face it doesn't work (otf)
    f5 > start working

    on chrome 5.0.375.23

  15. #15

    Chrome supports WOFF fonts as of 5.0.396.0, which should be released to Beta Channel soon.
    http://googlechromereleases.blogspot.com/2010/05/dev-channel-update.html

  1. | #1
  2. | #2
  3. | #3
  4. | #4
  5. | #5

For code blocks, use <pre lang="javascript" escaped="true">. css and html4strict are also accepted.

i left this space here for you to play. <3