SlideShare a Scribd company logo
1 of 181
Beyond Arial
Using @font-face to unleash web typography



John Kary | johnkary@ku.edu
Web Development & Interface Design
University of Kansas, Information Technology
September 2010 KU Web Developers Meeting
History
Using @font-face
Website Demo
Challenges
History
History – 1996
            Microsoft introduces “Core Fonts for the Web”




Source: http://en.wikipedia.org/wiki/Core_fonts_for_the_Web
History – 1996
            Microsoft introduces “Core Fonts for the Web”
                   Highly legible on screen




Source: http://en.wikipedia.org/wiki/Core_fonts_for_the_Web
History – 1996
            Microsoft introduces “Core Fonts for the Web”
                   Highly legible on screen
                   Offer a wide range of types styles in a few typefaces




Source: http://en.wikipedia.org/wiki/Core_fonts_for_the_Web
History – 1996
            Microsoft introduces “Core Fonts for the Web”
                   Highly legible on screen
                   Offer a wide range of types styles in a few typefaces
                   Support extensive internationalization




Source: http://en.wikipedia.org/wiki/Core_fonts_for_the_Web
History – 1996




Andale Mono
Source: http://en.wikipedia.org/wiki/Core_fonts_for_the_Web
History – 1996




Arial
Source: http://en.wikipedia.org/wiki/Core_fonts_for_the_Web
History – 1996




Comic Sans MS
Source: http://en.wikipedia.org/wiki/Core_fonts_for_the_Web
History – 1996




Courier New
Source: http://en.wikipedia.org/wiki/Core_fonts_for_the_Web
History – 1996




Georgia
Source: http://en.wikipedia.org/wiki/Core_fonts_for_the_Web
History – 1996




Impact
Source: http://en.wikipedia.org/wiki/Core_fonts_for_the_Web
History – 1996




Times New Roman
Source: http://en.wikipedia.org/wiki/Core_fonts_for_the_Web
History – 1996




Trebuchet MS
Source: http://en.wikipedia.org/wiki/Core_fonts_for_the_Web
History – 1996




Verdana
Source: http://en.wikipedia.org/wiki/Core_fonts_for_the_Web
History – 1996




Webdings
Source: http://en.wikipedia.org/wiki/Core_fonts_for_the_Web
History – 1996
           CSS1 is introduced by W3C




Source: http://www.w3.org/TR/REC-CSS1/
History – 1996
           CSS1 is introduced by W3C



                Setting font properties will be among the
                most common uses of style sheets.
                                         W3C Cascading Style Sheets, level 1. 5.2 Font properties.
                                              http://www.w3.org/TR/REC-CSS1/#font-properties




Source: http://www.w3.org/TR/REC-CSS1/
History – 1996
           CSS1 is introduced by W3C



                Setting font properties will be among the
                most common uses of style sheets.
                                           W3C Cascading Style Sheets, level 1. 5.2 Font properties.
                                                http://www.w3.org/TR/REC-CSS1/#font-properties




           But everyone still going crazy with Netscape’s <font> tags...

Source: http://www.w3.org/TR/REC-CSS1/
History – 1996
History – 1997
           Microsoft introduces Web Embedding Fonts Tool (WEFT)




Source: http://www.microsoft.com/typography/web/embedding/default.aspx
Source: http://en.wikipedia.org/wiki/Web_Embedding_Fonts_Tool#Web_Embedding_Fonts_Tool
History – 1997
           Microsoft introduces Web Embedding Fonts Tool (WEFT)
           TrueType Font (.ttf) => WEFT => Embedded OpenType (.eot)




Source: http://www.microsoft.com/typography/web/embedding/default.aspx
Source: http://en.wikipedia.org/wiki/Web_Embedding_Fonts_Tool#Web_Embedding_Fonts_Tool
History – 1997
           Microsoft introduces Web Embedding Fonts Tool (WEFT)
           TrueType Font (.ttf) => WEFT => Embedded OpenType (.eot)
           Internet Explorer 4+ supports it!




Source: http://www.microsoft.com/typography/web/embedding/default.aspx
Source: http://en.wikipedia.org/wiki/Web_Embedding_Fonts_Tool#Web_Embedding_Fonts_Tool
History – 1997
           Netscape 4 supports TrueDoc by Bitstream




Source: http://www.microsoft.com/typography/web/embedding/default.aspx
Source: http://en.wikipedia.org/wiki/Web_Embedding_Fonts_Tool#Web_Embedding_Fonts_Tool
History – 1997
           Netscape 4 supports TrueDoc by Bitstream
           Discontinued with Netscape 6




Source: http://www.microsoft.com/typography/web/embedding/default.aspx
Source: http://en.wikipedia.org/wiki/Web_Embedding_Fonts_Tool#Web_Embedding_Fonts_Tool
History – 1997
           Netscape 4 supports TrueDoc by Bitstream
           Discontinued with Netscape 6
                 Netscape 6 based on Mozilla, which was open-source
                 Bitstream wouldn’t allow release of its source code




Source: http://www.microsoft.com/typography/web/embedding/default.aspx
Source: http://en.wikipedia.org/wiki/Web_Embedding_Fonts_Tool#Web_Embedding_Fonts_Tool
History – 1997
           Netscape 4 supports TrueDoc by Bitstream
           Discontinued with Netscape 6
                 Netscape 6 based on Mozilla, which was open-source
                 Bitstream wouldn’t allow release of its source code


           TrueDoc didn’t kill Bitstream...



Source: http://www.microsoft.com/typography/web/embedding/default.aspx
Source: http://en.wikipedia.org/wiki/Web_Embedding_Fonts_Tool#Web_Embedding_Fonts_Tool
History – 1997
           Netscape 4 supports TrueDoc by Bitstream
           Discontinued with Netscape 6
                 Netscape 6 based on Mozilla, which was open-source
                 Bitstream wouldn’t allow release of its source code


           TrueDoc didn’t kill Bitstream...
                 WhatTheFont

Source: http://www.microsoft.com/typography/web/embedding/default.aspx
Source: http://en.wikipedia.org/wiki/Web_Embedding_Fonts_Tool#Web_Embedding_Fonts_Tool
WhatTheFont




Source: http://new.myfonts.com/WhatTheFont/
Source: http://new.myfonts.com/WhatTheFont/iPhone/
History – 1998
           First draft of CSS2 is introduced by W3C




Source: http://www.w3.org/TR/WD-CSS2-971104/fonts.html#h-14.3.1
Source: http://www.w3.org/TR/2002/WD-CSS21-20020802/fonts.html
History – 1998
           First draft of CSS2 is introduced by W3C
           First mentions of @font-face appear!




Source: http://www.w3.org/TR/WD-CSS2-971104/fonts.html#h-14.3.1
Source: http://www.w3.org/TR/2002/WD-CSS21-20020802/fonts.html
History – 1998
           First draft of CSS2 is introduced by W3C
           First mentions of @font-face appear!
           But disappear in CSS2.1 spec... :(




Source: http://www.w3.org/TR/WD-CSS2-971104/fonts.html#h-14.3.1
Source: http://www.w3.org/TR/2002/WD-CSS21-20020802/fonts.html
History – 2000
           First CSS3 intro provided by W3C
           Intend to support @font-face




Source: http://www.w3.org/TR/2000/WD-css3-roadmap-20000414
History – Zzzzzz
  Browser vendors never come to a format consensus
History – Zzzzzz
  Browser vendors never come to a format consensus
  Web fonts zzzzzzzzle...
History – Web 2.0
History – Web 2.0
  Resurgence in web typography
History – Web 2.0
  Resurgence in web typography
  All the hip kids are using Prototype and jQuery
History – Web 2.0
  Resurgence in web typography
  All the hip kids are using Prototype and jQuery
  JavaScript is now the cool kid
History – Web 2.0
  Resurgence in web typography
  All the hip kids are using Prototype and jQuery
  JavaScript is now the cool kid
  Let’s use it for everything!
History – Web 2.0
  Resurgence in web typography
  All the hip kids are using Prototype and jQuery
  JavaScript is now the cool kid
  Let’s use it for everything!
  Instead of awesome, we get...
History – Web 2.0
History – Web 2.0




Source: http://www.dezinerfolio.com/2009/03/31/dynamic-font-replacement-solutions
History – Web 2.0




Source: http://www.dezinerfolio.com/2009/03/31/dynamic-font-replacement-solutions
History – Web 2.0




Source: http://www.dezinerfolio.com/2009/03/31/dynamic-font-replacement-solutions
History – Web 2.0




Source: http://www.dezinerfolio.com/2009/03/31/dynamic-font-replacement-solutions
History – Web 2.0




Source: http://www.dezinerfolio.com/2009/03/31/dynamic-font-replacement-solutions
History – Web 2.0




Source: http://www.dezinerfolio.com/2009/03/31/dynamic-font-replacement-solutions
History – Web 2.0




Source: http://www.dezinerfolio.com/2009/03/31/dynamic-font-replacement-solutions
History – Web 2.0




Source: http://www.dezinerfolio.com/2009/03/31/dynamic-font-replacement-solutions
History – Web 2.0




Source: http://www.dezinerfolio.com/2009/03/31/dynamic-font-replacement-solutions
History – Web 2.0




Source: http://www.dezinerfolio.com/2009/03/31/dynamic-font-replacement-solutions
History – Web 2.0




Source: http://www.dezinerfolio.com/2009/03/31/dynamic-font-replacement-solutions
History – Web 2.0




Source: http://www.dezinerfolio.com/2009/03/31/dynamic-font-replacement-solutions
History – Web 2.0




Source: http://www.dezinerfolio.com/2009/03/31/dynamic-font-replacement-solutions
History – Web 2.0




Source: http://www.dezinerfolio.com/2009/03/31/dynamic-font-replacement-solutions
History – Web 2.0




Source: http://www.dezinerfolio.com/2009/03/31/dynamic-font-replacement-solutions
History – Last few years...
History – Last few years...
CSS3 Font module is currently a medium priority by W3C




Source: http://www.w3.org/Style/CSS/current-work
Source: http://www.w3.org/Style/CSS/Specs/All#fonts
History – Last few years...
CSS3 Font module is currently a medium priority by W3C




Source: http://www.w3.org/Style/CSS/current-work
Source: http://www.w3.org/Style/CSS/Specs/All#fonts
History – Last few years...
CSS3 Font module is currently a medium priority by W3C


                                                      Intend to support @font-face
                                                      Follow CSS3
                                                      http://www.w3.org/Style/CSS/current-work

                                                      Follow Fonts module
                                                      http://www.w3.org/Style/CSS/Specs/All#fonts




Source: http://www.w3.org/Style/CSS/current-work
Source: http://www.w3.org/Style/CSS/Specs/All#fonts
History – Present
History – Present

              HTML5
History – Present

              HTML5



               CSS3
History – Present

              HTML5

       @font-face
               CSS3
@font-face
@font-face?
@font-face rule allows for linking to fonts that are
automatically activated when needed.

This permits authors to work around the limitation of
"web-safe" fonts [...]

allowing for consistent rendering independent of the
fonts available in a given user's environment.
                                        CSS Fonts Module Level 3. 4.1 The @font-face rule.
                      http://www.w3.org/TR/2009/WD-css3-fonts-20090618/#font-resources
@font-face
@font-face
  Use any font* you want on your website
@font-face
  Use any font* you want on your website
    * Any font you have the license to use...
@font-face
  Use any font* you want on your website
    * Any font you have the license to use...
  Relies on browser’s native font rendering
@font-face
  Use any font* you want on your website
    * Any font you have the license to use...
  Relies on browser’s native font rendering
    Good and Bad News...
@font-face – The Bad News
@font-face – The Bad News
  Relies on browser’s native font rendering
@font-face – The Bad News
  Relies on browser’s native font rendering
  Inherit all problems of inconsistent font-rendering
@font-face – The Bad News
  Relies on browser’s native font rendering
  Inherit all problems of inconsistent font-rendering
    Font size
@font-face – The Bad News
  Relies on browser’s native font rendering
  Inherit all problems of inconsistent font-rendering
    Font size
    Aliasing
@font-face – The Bad News
  Relies on browser’s native font rendering
  Inherit all problems of inconsistent font-rendering
    Font size
    Aliasing
  Easy to abuse
@font-face – The Good News
@font-face – The Good News
  Relies on browser’s native font rendering
@font-face – The Good News
  Relies on browser’s native font rendering
  Users can copy/paste your text
@font-face – The Good News
  Relies on browser’s native font rendering
  Users can copy/paste your text
  Text is natively visible to search-engines
@font-face – The Good News
  Relies on browser’s native font rendering
  Users can copy/paste your text
  Text is natively visible to search-engines
  More SEO-friendly <h1> <h2> tags
@font-face – The Good News
  No more reliance on JavaScript, let alone Flash
@font-face – The Good News
  No more reliance on JavaScript, let alone Flash
  Syntax is straight-forward and not hacky
@font-face – The Good News
  No more reliance on JavaScript, let alone Flash
  Syntax is straight-forward and not hacky
    OK, not hacky compared to sIFR and that junk
@font-face – The Good News
  No more reliance on JavaScript, let alone Flash
  Syntax is straight-forward and not hacky
    OK, not hacky compared to sIFR and that junk
  And maybe best of all...
@font-face – The Good News
  No more reliance on JavaScript, let alone Flash
  Syntax is straight-forward and not hacky
    OK, not hacky compared to sIFR and that junk
  And maybe best of all...
    Print stylesheets work!
@font-face – The Good News
@font-face
@font-face – Browser Support
@font-face – Browser Support




Source: http://webfonts.info/wiki/index.php?title=Browser_support
Source: Google Analytics (Sept 1-23, 2010, Referenced Sept 23, 2010)
97.6%
97.6%
Kinda...
@font-face – Font Formats
  This gets a little ugly...
@font-face – Font Formats
  This gets a little ugly...
  Currently 5 major formats
@font-face – Font Formats
  This gets a little ugly...
  Currently 5 major formats
    OTF – OpenType Font
@font-face – Font Formats
  This gets a little ugly...
  Currently 5 major formats
    OTF – OpenType Font
    TTF – TrueType Font
@font-face – Font Formats
  This gets a little ugly...
  Currently 5 major formats
    OTF – OpenType Font
    TTF – TrueType Font
    SVG – Scalable Vector Graphic
@font-face – Font Formats
  This gets a little ugly...
  Currently 5 major formats
    OTF – OpenType Font
    TTF – TrueType Font
    SVG – Scalable Vector Graphic
    EOT - Embedded OpenType
@font-face – Font Formats
  This gets a little ugly...
  Currently 5 major formats
    OTF – OpenType Font
    TTF – TrueType Font
    SVG – Scalable Vector Graphic
    EOT - Embedded OpenType
    WOFF – Web Open Font Format
@font-face – Font Format Support by Browsers
@font-face – Font Format Support by Browsers




Source: http://webfonts.info/wiki/index.php?title=Browser_support
So, which browser?
So, which browser?

  Which format?
ALL of them!
     (Almost)
@font-face – Syntax
@font-face – Syntax
@font-face – Syntax
@font-face – Syntax
@font-face – Syntax
@font-face – Syntax
@font-face – Syntax
@font-face – Syntax
@font-face – Syntax




Prevents local font of same name from rendering
@font-face – Syntax
@font-face – Syntax




Internet Explorer 6, 7, 8 are dumb
@font-face – Syntax
@font-face – Syntax




                 Load WOFF, TTF, SVG
Other browsers are smart enough to use the font they need
I thought you said
   this was easy?
@font-face – Syntax
@font-face generator
http://www.fontsquirrel.com/fontface/generator
http://www.fontsquirrel.com/fontface/generator
http://www.fontsquirrel.com/fontface/generator
http://www.fontsquirrel.com/fontface/generator
http://www.fontsquirrel.com/fontface/generator
http://www.fontsquirrel.com/fontface/generator
Could this be even easier?
http://code.google.com/webfonts
http://code.google.com/webfonts
http://code.google.com/webfonts
http://code.google.com/webfonts
http://code.google.com/webfonts
Website Demo
KU Internal Audit – Before
KU Internal Audit – After
Challenges
Challenges – MIME types
Challenges – MIME types
  Chrome & Safari inspector will throw some errors...
Challenges – MIME types
  Chrome & Safari inspector will throw some errors...
Challenges – MIME types
  Chrome & Safari inspector will throw some errors...
Challenges – MIME types
           Chrome & Safari inspector will throw some errors...




           No web browser MIME type denition for WOFF, TTF, OTF

Source: http://lists.kde.org/?l=kde-core-devel&m=102236005106158&w=2
Challenges – MIME types
            Firefox doesn't even consider MIME-type on fonts




Source: https://developer.mozilla.org/en/CSS/@font-face
Challenges – MIME types
            Firefox doesn't even consider MIME-type on fonts




Source: https://developer.mozilla.org/en/CSS/@font-face
Challenges – MIME types
            Even though there’s no MIME-type, don’t leave it up to the browser




Source: http://stackoverflow.com/questions/3594823/mime-type-for-woff-fonts
Source: http://www.fontshop.com/blog/newsletters/pdf/webfontfontuserguide.pdf
Challenges – MIME types
            Even though there’s no MIME-type, don’t leave it up to the browser
            Remember, browsers are dumb




Source: http://stackoverflow.com/questions/3594823/mime-type-for-woff-fonts
Source: http://www.fontshop.com/blog/newsletters/pdf/webfontfontuserguide.pdf
Challenges – MIME types
            Even though there’s no MIME-type, don’t leave it up to the browser
            Remember, browsers are dumb
            Add these to .htaccess




Source: http://stackoverflow.com/questions/3594823/mime-type-for-woff-fonts
Source: http://www.fontshop.com/blog/newsletters/pdf/webfontfontuserguide.pdf
Challenges – FOUC!
Challenges – FOUC!
            Flash Of Unstyled Content




Source: http://stackoverflow.com/questions/3594823/mime-type-for-woff-fonts
Source: http://webtools.ku.edu/template/cong.shtml
Challenges – FOUC!
            Flash Of Unstyled Content
            If we don't set styles before the DOM starts loading we'll see FOUC




Source: http://stackoverflow.com/questions/3594823/mime-type-for-woff-fonts
Source: http://webtools.ku.edu/template/cong.shtml
Challenges – FOUC!
            Flash Of Unstyled Content
            If we don't set styles before the DOM starts loading we'll see FOUC
            Place CSS in <head>




Source: http://stackoverflow.com/questions/3594823/mime-type-for-woff-fonts
Source: http://webtools.ku.edu/template/cong.shtml
Challenges – FOUC!
            Flash Of Unstyled Content
            If we don't set styles before the DOM starts loading we'll see FOUC
            Place CSS in <head>
                  <!--set var="mycss" -->
                  <!--set var="pagecss" -->




Source: http://stackoverflow.com/questions/3594823/mime-type-for-woff-fonts
Source: http://webtools.ku.edu/template/cong.shtml
Challenges – Licensing
Challenges – Licensing
            Not all fonts licensed for web usage




Source: http://acko.net/blog/moving-towards-voluntary-drm-for-web-fonts
Challenges – Licensing
            Not all fonts licensed for web usage
            But font foundries have no real way to keep fonts from being used




Source: http://acko.net/blog/moving-towards-voluntary-drm-for-web-fonts
Challenges – Licensing
            Not all fonts licensed for web usage
            But font foundries have no real way to keep fonts from being used
            Browser doesn’t enforce DRM (there’s no web DRM to enforce)




Source: http://acko.net/blog/moving-towards-voluntary-drm-for-web-fonts
Challenges – Licensing
            Not all fonts licensed for web usage
            But font foundries have no real way to keep fonts from being used
            Browser doesn’t enforce DRM (there’s no web DRM to enforce)
            Could use a font from your font folio...




Source: http://acko.net/blog/moving-towards-voluntary-drm-for-web-fonts
Challenges – Licensing
            Not all fonts licensed for web usage
            But font foundries have no real way to keep fonts from being used
            Browser doesn’t enforce DRM (there’s no web DRM to enforce)
            Could use a font from your font folio...
                  You could also go download a movie from The Pirate Bay...




Source: http://acko.net/blog/moving-towards-voluntary-drm-for-web-fonts
Challenges – Licensing
            Not all fonts licensed for web usage
            But font foundries have no real way to keep fonts from being used
            Browser doesn’t enforce DRM (there’s no web DRM to enforce)
            Could use a font from your font folio...
                  You could also go download a movie from The Pirate Bay...
                  Both are illegal


Source: http://acko.net/blog/moving-towards-voluntary-drm-for-web-fonts
Challenges – Licensing
  Plenty of Free Font resources to choose from
Challenges – Licensing
  Plenty of Free Font resources to choose from
    http://www.fontsquirrel.com
    http://www.openfontlibrary.org
    http://code.google.com/webfonts
Challenges – Font Piracy
Challenges – Font Piracy
  Critics say @font-face encourages font piracy
Challenges – Font Piracy
  Critics say @font-face encourages font piracy
  Well, all my work is freely available on www.ku.edu
Challenges – Font Piracy
  Critics say @font-face encourages font piracy
  Well, all my work is freely available on www.ku.edu
  I even host some of my personal code on github.com/johnkary
Challenges – Font Piracy
  Critics say @font-face encourages font piracy
  Well, all my work is freely available on www.ku.edu
  I even host some of my personal code on github.com/johnkary
  I still have a job...
Challenges – Aesthetics
Challenges – Aesthetics
  @font-face is easy to implement, it’s copy/paste
Challenges – Aesthetics
  @font-face is easy to implement, it’s copy/paste
  Yields easy abuse
Challenges – Aesthetics
  @font-face is easy to implement, it’s copy/paste
  Yields easy abuse
  Comic Sans?
Challenges – Aesthetics
  @font-face is easy to implement, it’s copy/paste
  Yields easy abuse
  Comic Sans?
Challenges – Aesthetics
  Read up on web typography
Challenges – Aesthetics
  Read up on web typography
  http://webtypography.net/intro/
Challenges – Aesthetics
  Read up on web typography
  http://webtypography.net/intro/
Questions?


Source: http://xkcd.com/590/

More Related Content

Similar to Using @font-face to unleash web typography

Firefox 4 & web
Firefox 4 & webFirefox 4 & web
Firefox 4 & webdynamis
 
Firefox 4 and Web
Firefox 4 and WebFirefox 4 and Web
Firefox 4 and Webdynamis
 
Change by HTML5
Change by HTML5Change by HTML5
Change by HTML5dynamis
 
Web Technologies
Web TechnologiesWeb Technologies
Web Technologiesdynamis
 
The Trouble With Type
The Trouble With TypeThe Trouble With Type
The Trouble With Typeelliotjaystocks
 
Firefox 4 & THE AFTER
Firefox 4 & THE AFTERFirefox 4 & THE AFTER
Firefox 4 & THE AFTERdynamis
 
Opera and the Open Web platform
Opera and the Open Web platformOpera and the Open Web platform
Opera and the Open Web platformAndreas Bovens
 
ClueCon 2016: Should you use WebRTC?
ClueCon 2016: Should you use WebRTC?ClueCon 2016: Should you use WebRTC?
ClueCon 2016: Should you use WebRTC?Chad Hart
 
HTML5 & Web Platform
HTML5 & Web PlatformHTML5 & Web Platform
HTML5 & Web PlatformSwapSkills
 
The State of Web Type
The State of Web TypeThe State of Web Type
The State of Web TypeMatthew Buchanan
 
"Will Git Be Around Forever? A List of Possible Successors" at UtrechtJUG
"Will Git Be Around Forever? A List of Possible Successors" at UtrechtJUG"Will Git Be Around Forever? A List of Possible Successors" at UtrechtJUG
"Will Git Be Around Forever? A List of Possible Successors" at UtrechtJUG🎤 Hanno Embregts 🎸
 
Tool twist newsletter 2010
Tool twist newsletter 2010Tool twist newsletter 2010
Tool twist newsletter 2010Aravind Naidu
 
Web font services: March 2011
Web font services: March 2011Web font services: March 2011
Web font services: March 2011RZasadzinski
 
Students of Navgujarat College of Computer Applications, Ahmedabad felt excit...
Students of Navgujarat College of Computer Applications, Ahmedabad felt excit...Students of Navgujarat College of Computer Applications, Ahmedabad felt excit...
Students of Navgujarat College of Computer Applications, Ahmedabad felt excit...cresco
 
Typography online
Typography onlineTypography online
Typography onlineJake Smith
 
Web ui
Web uiWeb ui
Web uirasty4
 
Web ui
Web uiWeb ui
Web uirasty4
 
Keypoints html5
Keypoints html5Keypoints html5
Keypoints html5dynamis
 

Similar to Using @font-face to unleash web typography (20)

Firefox 4 & web
Firefox 4 & webFirefox 4 & web
Firefox 4 & web
 
Firefox 4 and Web
Firefox 4 and WebFirefox 4 and Web
Firefox 4 and Web
 
Change by HTML5
Change by HTML5Change by HTML5
Change by HTML5
 
Web Technologies
Web TechnologiesWeb Technologies
Web Technologies
 
The Trouble With Type
The Trouble With TypeThe Trouble With Type
The Trouble With Type
 
Firefox 4 & THE AFTER
Firefox 4 & THE AFTERFirefox 4 & THE AFTER
Firefox 4 & THE AFTER
 
Web Standards
Web StandardsWeb Standards
Web Standards
 
Opera and the Open Web platform
Opera and the Open Web platformOpera and the Open Web platform
Opera and the Open Web platform
 
ClueCon 2016: Should you use WebRTC?
ClueCon 2016: Should you use WebRTC?ClueCon 2016: Should you use WebRTC?
ClueCon 2016: Should you use WebRTC?
 
HTML5 & Web Platform
HTML5 & Web PlatformHTML5 & Web Platform
HTML5 & Web Platform
 
The State of Web Type
The State of Web TypeThe State of Web Type
The State of Web Type
 
"Will Git Be Around Forever? A List of Possible Successors" at UtrechtJUG
"Will Git Be Around Forever? A List of Possible Successors" at UtrechtJUG"Will Git Be Around Forever? A List of Possible Successors" at UtrechtJUG
"Will Git Be Around Forever? A List of Possible Successors" at UtrechtJUG
 
Tool twist newsletter 2010
Tool twist newsletter 2010Tool twist newsletter 2010
Tool twist newsletter 2010
 
The future is mostly static
The future is mostly staticThe future is mostly static
The future is mostly static
 
Web font services: March 2011
Web font services: March 2011Web font services: March 2011
Web font services: March 2011
 
Students of Navgujarat College of Computer Applications, Ahmedabad felt excit...
Students of Navgujarat College of Computer Applications, Ahmedabad felt excit...Students of Navgujarat College of Computer Applications, Ahmedabad felt excit...
Students of Navgujarat College of Computer Applications, Ahmedabad felt excit...
 
Typography online
Typography onlineTypography online
Typography online
 
Web ui
Web uiWeb ui
Web ui
 
Web ui
Web uiWeb ui
Web ui
 
Keypoints html5
Keypoints html5Keypoints html5
Keypoints html5
 

Recently uploaded

Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsRavi Sanghani
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch TuesdayIvanti
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Hiroshi SHIBATA
 
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesAssure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesThousandEyes
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfNeo4j
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesThousandEyes
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPathCommunity
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentPim van der Noll
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality AssuranceInflectra
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...Wes McKinney
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI AgeCprime
 
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...panagenda
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesKari Kakkonen
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 

Recently uploaded (20)

Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and Insights
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch Tuesday
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024
 
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesAssure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdf
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to Hero
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI Age
 
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examples
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 

Using @font-face to unleash web typography

Editor's Notes

  1. Optical Character Recognition on the image
  2. - We get an influx of hack solutions with equally hacky names - You know, where it&apos;s cool to leave out vowels
  3. Around 2005 we had Scalable Inman Flash Replacement. Uses JavaScript and Flash to replace text.
  4. Que-pho&amp;#x2019;, I guess? Takes a font, runs it through a proprietary generator called FontForge, which generates an SVG font, then is rendered by a 3-part render engine? Please.
  5. PHP + CSS? I don&amp;#x2019;t WANT my designers messing with PHP. Security nightmare. NEXT!
  6. Relies on JavaScript to &amp;#x201C;FLIR-ize&amp;#x201D; HTML. All their demos were broken on their site in Chrome, enough said.
  7. SIIR... OK
  8. sIFR 3! Still relying on server-side image replacement. Code is messy.
  9. DTR, more strategies for replacing fonts
  10. Adding .js to the end of your library apparently makes you cool, and still use JavaScript
  11. IR-ERRRR, yet another IRRR library.
  12. Now we&amp;#x2019;re combining DTR with PHP and CSS, sounds fun, right?
  13. swifr... BORDERING ON AWESOME. Not impressed... Designers and font foundries thought these were awesome, well that&apos;s cause they weren&apos;t the ones implementing them
  14. - Only a few are accessible, but ALL are a huge pain
  15. We&amp;#x2019;re developers running into huge piles of...
  16. Wait, @font-face?
  17. What the heck is @font-face?
  18. Pulled from the CSS3 spec
  19. Regardless if it&amp;#x2019;s installed on a user&amp;#x2019;s machine
  20. Well sorta. Licensing comes into play, which we talk about later
  21. So that&amp;#x2019;s @font-face, but what about browser support? We talked about native rendering of fonts... If I&amp;#x2019;ve lost you, you can start paying attention again cause now is the fun stuff
  22. Anybody want to guess our IE6 usage on www.ku.edu? 1.8 million hits, 26000 are IE6, that&amp;#x2019;s 1.5%
  23. So uhh...
  24. Mission Accomplished, right?
  25. Well, kinda... Let&amp;#x2019;s get into what it is
  26. Define @font-face once, reuse font-family multiple times
  27. OpenType spec says two-byte unicode characters don&amp;#x2019;t work in font names on a Mac, so lessons liklihood of a local font rendering in its place. You could reference a local() font which is completely different than what you think it is.
  28. Chrome 6 knows it uses WOFF, so it downloads that file.
  29. SVG has one, EOT has one
  30. Aesthetics are subjective. They&amp;#x2019;re traditionally a designer&amp;#x2019;s realm. But control is in the hands of the &amp;#x201C;non-designer&amp;#x201D; developer.