SlideShare a Scribd company logo
1 of 109
Web Fonts: Why
      Bother?
Greg Veen, 29 March 2011, Web 2.0 Expo, San
                 Francisco
Hello, I’m Greg
Veen
Web designer, developer

Now: Co-founder,
Before: Twitter, Google,
Monster.com...
@gregveen
@gregveen
#w2e #webfonts
Agenda
A web typography renaissance
How did we get here?
The value of web fonts
Challenges, advances
Q&A
Agenda
A web typography renaissance
How did we get here?
The value of web fonts
Challenges, advances
Q&A
Agenda
A web typography renaissance
How did we get here?
The value of web fonts
Challenges, advances
Q&A
600 years of typography
thousand
s
of
fonts
1993:
no
fonts
2008:
18
fonts
today: new browsers
today: new browsers
Agenda
A web typography renaissance
How did we get here?
The value of web fonts
Challenges, advances
Q&A
formats
OTF SVG WOFF EOT


          formats
OTF/TTF        SVG        WOFF    EOT

   IE9                     IE9    IE5

  FF3.5        FF3.5      FF3.6

Chrome 4 Chrome 0.3 Chrome 5

Safari 3.1   Safari 3.1

Opera 10     Opera 9

 iOS 4.2      iOS 1

   2.2




                                 browsers
@font-face {
  font-family: 'Awesome Font';
  src: url('awesome-font.ttf');
}
@font-face {
  font-family: 'Awesome Font';
  src: url('awesome-font.ttf');
}
@font-face {
  font-family: 'Awesome Font';
  src: url('awesome-font.ttf');
}
@font-face {
  font-family: 'Awesome Font';
  src: url('awesome-font.ttf');
}
@font-face {
  font-family: 'Awesome Font';
  src: url('awesome-font.ttf');
}




h1 {
  font-family: 'Awesome Font',
  'Georgia', serif;
}
@font-face {
  font-family: 'Awesome Font';
  src: url('awesome-font.ttf');
}




h1 {
  font-family: 'Awesome Font',
  'Georgia', serif;
}
@font-face {
  font-family: 'Awesome Font';
  src: url('awesome-font.ttf');
}




h1 {
  font-family: 'Awesome Font',
  'Georgia', serif;
}
@font-face {
  font-family: 'Awesome Font';
  src: url('awesome-font.ttf');
}




h1 {
  font-family: 'Awesome Font',
  'Georgia', serif;
}
@font-face {
  font-family: 'Awesome Font';
  src: url('awesome-font.ttf');
}




h1 {
  font-family: 'Awesome Font',
  'Georgia', serif;
}
@font-face {
  font-family: 'Awesome Font';
  src: url('awesome-font.ttf');
}




h1 {
  font-family: 'Awesome Font',
  'Georgia', serif;
}
OTF/TTF        SVG        WOFF    EOT

   IE9                     IE9    IE5

  FF3.5        FF3.5      FF3.6

Chrome 4 Chrome 0.3 Chrome 5

Safari 3.1   Safari 3.1

Opera 10     Opera 9

              iOS 1

   2.2




                                 browsers
@font-face {
  font-family: 'Awesome Font';
  src: url('awesome-font.eot'); /* IE 5-8 */
  src: local('☺'), /* sneaky trick for IE */
       url('awesome-font.woff') format('woff'), /* FF 3.6+, Chrome 5+, IE9 */
       url('awesome-font.ttf') format('truetype'), /* Opera, Safari, iOS4.2+ */
       url('awesome-font.svg#font') format('svg'); /* iOS <4.1 */
}
@font-face {
  font-family: 'Awesome Font';
  src: url('awesome-font.eot'); /* IE 5-8 */
  src: local('☺'), /* sneaky trick for IE */
       url('awesome-font.woff') format('woff'), /* FF 3.6+, Chrome 5+, IE9 */
       url('awesome-font.ttf') format('truetype'), /* Opera, Safari, iOS4.2+ */
       url('awesome-font.svg#font') format('svg'); /* iOS <4.1 */
}

@media screen and (max-device-width: 480px) {
   @font-face {
     font-family: "Awesome Font";
     src: url("awesome-font.woff") format("woff"),
     url("GraublauWeb.otf") format("opentype"),
     url("GraublauWeb.svg#grablau") format("svg");
}}
@font-face {
  font-family: 'Awesome Font';
  src: url('awesome-font.eot'); /* IE9 Compat Modes */
  src: url('awesome-font.eot?iefix') format('eot'), /* IE6-IE8 */

      url('awesome-font.woff') format('woff'), /* Modern Browsers */

      url('awesome-font.ttf') format('truetype'), /* Safari, Android, iOS */

      url('awesome-font.svg#svgFontName') format('svg'); /* Legacy iOS */
}
<script type="text/javascript" src="http://use.typekit.com/xxxxxxx.js"></script>
<script type="text/javascript">try{Typekit.load();}catch(e){}</script>
rendering
Rendering factors
1)   type design philosophy
2)   font file and outline format
3)   hinting
4)   operating systems
5)   web browsers
6)   font smoothing preferences
Rendering factors
1)   type design philosophy
2)   font file and outline format
3)   hinting
4)   operating systems
5)   web browsers
6)   font smoothing preferences
Rendering factors
1)   type design philosophy
2)   font file and outline format
3)   hinting
4)   operating systems
5)   web browsers
6)   font smoothing preferences
Rendering factors
1)   type design philosophy
2)   font file and outline format
3)   hinting
4)   operating systems
5)   web browsers
6)   font smoothing preferences
Rendering factors
1)   type design philosophy
2)   font file and outline format
3)   hinting
4)   operating systems
5)   web browsers
6)   font smoothing preferences
Rendering factors
1)   type design philosophy
2)   font file and outline format
3)   hinting
4)   operating systems
5)   web browsers
6)   font smoothing preferences
Rendering factors
1)   type design philosophy
2)   font file and outline format
3)   hinting
4)   operating systems
5)   web browsers
6)   font smoothing preferences
Rendering factors
1)   type design philosophy
2)   font file and outline format
3)   hinting
4)   operating systems
5)   web browsers
6)   font smoothing preferences
Rendering factors
1)   type design philosophy
2)   font file and outline format
3)   hinting
4)   operating systems
5)   web browsers
6)   font smoothing preferences
TrueType and
TrueType and
Rendering factors
1)   type design philosophy
2)   font file and outline format
3)   hinting
4)   operating systems
5)   web browsers
6)   font smoothing preferences
Rendering factors
1)   type design philosophy
2)   font file and outline format
3)   hinting
4)   operating systems
5)   web browsers
6)   font smoothing preferences
Rendering factors
1)   type design philosophy
2)   font file and outline format
3)   hinting
4)   operating systems
5)   web browsers
6)   font smoothing preferences
Rendering factors
1)   type design philosophy
2)   font file and outline format
3)   hinting
4)   operating systems
5)   web browsers
6)   font smoothing preferences
Core Text
Core Text
DirectWrite
GDI + Core Text
      ClearType
Core Text
GDI + Standard
Core + no
 GDI Text
WTF?!
Flash of
unstyled text
<script type="text/javascript" src="http://use.typekit.com/
xxxxxxx.js"></script>
<script type="text/javascript">try{Typekit.load();}catch(e){}</
script>
<style type="text/css">
  .wf-loading {
    /* styles to use when web fonts are loading */
  }

  .wf-active {
    /* styles to use when web fonts are active */
  }

  .wf-inactive {
    /* styles to use when web fonts are inactive */
  }
</style>
“Radical Web Typography”
<h1 class="fancy_title">1962</h1>
<h1 class="fancy_title">
  <span class="char1">1</span>
  <span class="char2">9</span>
  <span class="char3">6</span>
  <span class="char4">2</span>
</h1>
h1.fancy_title .char3,
h1.fancy_title .char4 {
  position: relative;
  top: -10px;
}
<h1 class="fancy_title">
  <span class="char1">1</span>
  <span class="char2">9</span>
  <span class="char3">7</span>
  <span class="char4">2</span>
</h1>
<h1 class="fancy_title">
  <span class="char1">1</span>
  <span class="char2">9</span>
  <span class="char3">7</span>
  <span class="char4">2</span>
</h1>
<h1 class="fancy_title">1972</h1>
Thank you!
Questions?
Comments?
@gregveen

More Related Content

Similar to Web Fonts: Why Bother?

CSS @font-face : Personalized fonts
CSS @font-face : Personalized fontsCSS @font-face : Personalized fonts
CSS @font-face : Personalized fontsYves Van Goethem
 
Making drupal beautiful with web fonts
Making drupal beautiful with web fontsMaking drupal beautiful with web fonts
Making drupal beautiful with web fontsFour Kitchens
 
Web font services: March 2011
Web font services: March 2011Web font services: March 2011
Web font services: March 2011RZasadzinski
 
New Web Typography
New Web TypographyNew Web Typography
New Web TypographyMonotype
 
Progressive Enhancement & Intentional Degradation 2
Progressive Enhancement & Intentional Degradation 2Progressive Enhancement & Intentional Degradation 2
Progressive Enhancement & Intentional Degradation 2elliotjaystocks
 
Implementing @font-face
Implementing @font-faceImplementing @font-face
Implementing @font-faceAban Nesta
 
Web Typography with sIFR 3 at Drupalcamp Copenhagen
Web Typography with sIFR 3 at Drupalcamp CopenhagenWeb Typography with sIFR 3 at Drupalcamp Copenhagen
Web Typography with sIFR 3 at Drupalcamp CopenhagenMark Wubben
 
Webfonts: Demystified
Webfonts: DemystifiedWebfonts: Demystified
Webfonts: DemystifiedMel Choyce
 
The NEW Web Typography: Where the Sexy Is
The NEW Web Typography: Where the Sexy IsThe NEW Web Typography: Where the Sexy Is
The NEW Web Typography: Where the Sexy IsJason CranfordTeague
 
The New Web Typography
The New Web TypographyThe New Web Typography
The New Web TypographyForum One
 
Employing Custom Fonts
Employing Custom FontsEmploying Custom Fonts
Employing Custom FontsPaul Irish
 
Font Embedding With CSS3
Font Embedding With CSS3Font Embedding With CSS3
Font Embedding With CSS3jeremyflint
 
The state of web typography
The state of web typographyThe state of web typography
The state of web typographyFour Kitchens
 
Controlling Web Typography
Controlling Web TypographyControlling Web Typography
Controlling Web TypographyTrent Walton
 
Progressive enhancement
Progressive enhancementProgressive enhancement
Progressive enhancementZohar Arad
 
The type revolutionary's cookbook
The type revolutionary's cookbookThe type revolutionary's cookbook
The type revolutionary's cookbookFour Kitchens
 

Similar to Web Fonts: Why Bother? (20)

CSS @font-face : Personalized fonts
CSS @font-face : Personalized fontsCSS @font-face : Personalized fonts
CSS @font-face : Personalized fonts
 
Making drupal beautiful with web fonts
Making drupal beautiful with web fontsMaking drupal beautiful with web fonts
Making drupal beautiful with web fonts
 
What the @font-face
What the @font-faceWhat the @font-face
What the @font-face
 
Web font services: March 2011
Web font services: March 2011Web font services: March 2011
Web font services: March 2011
 
New Web Typography
New Web TypographyNew Web Typography
New Web Typography
 
The Trouble With Type
The Trouble With TypeThe Trouble With Type
The Trouble With Type
 
Progressive Enhancement & Intentional Degradation 2
Progressive Enhancement & Intentional Degradation 2Progressive Enhancement & Intentional Degradation 2
Progressive Enhancement & Intentional Degradation 2
 
Implementing @font-face
Implementing @font-faceImplementing @font-face
Implementing @font-face
 
new fonts for the web
new fonts for the webnew fonts for the web
new fonts for the web
 
Web Typography with sIFR 3 at Drupalcamp Copenhagen
Web Typography with sIFR 3 at Drupalcamp CopenhagenWeb Typography with sIFR 3 at Drupalcamp Copenhagen
Web Typography with sIFR 3 at Drupalcamp Copenhagen
 
Webfonts: Demystified
Webfonts: DemystifiedWebfonts: Demystified
Webfonts: Demystified
 
The State of Web Type
The State of Web TypeThe State of Web Type
The State of Web Type
 
The NEW Web Typography: Where the Sexy Is
The NEW Web Typography: Where the Sexy IsThe NEW Web Typography: Where the Sexy Is
The NEW Web Typography: Where the Sexy Is
 
The New Web Typography
The New Web TypographyThe New Web Typography
The New Web Typography
 
Employing Custom Fonts
Employing Custom FontsEmploying Custom Fonts
Employing Custom Fonts
 
Font Embedding With CSS3
Font Embedding With CSS3Font Embedding With CSS3
Font Embedding With CSS3
 
The state of web typography
The state of web typographyThe state of web typography
The state of web typography
 
Controlling Web Typography
Controlling Web TypographyControlling Web Typography
Controlling Web Typography
 
Progressive enhancement
Progressive enhancementProgressive enhancement
Progressive enhancement
 
The type revolutionary's cookbook
The type revolutionary's cookbookThe type revolutionary's cookbook
The type revolutionary's cookbook
 

Recently uploaded

2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfhans926745
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 

Recently uploaded (20)

2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 

Web Fonts: Why Bother?

  • 1. Web Fonts: Why Bother? Greg Veen, 29 March 2011, Web 2.0 Expo, San Francisco
  • 2. Hello, I’m Greg Veen Web designer, developer Now: Co-founder, Before: Twitter, Google, Monster.com...
  • 5. Agenda A web typography renaissance How did we get here? The value of web fonts Challenges, advances Q&A
  • 6. Agenda A web typography renaissance How did we get here? The value of web fonts Challenges, advances Q&A
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20. Agenda A web typography renaissance How did we get here? The value of web fonts Challenges, advances Q&A
  • 21. 600 years of typography
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 32.
  • 33. Agenda A web typography renaissance How did we get here? The value of web fonts Challenges, advances Q&A
  • 35. OTF SVG WOFF EOT formats
  • 36. OTF/TTF SVG WOFF EOT IE9 IE9 IE5 FF3.5 FF3.5 FF3.6 Chrome 4 Chrome 0.3 Chrome 5 Safari 3.1 Safari 3.1 Opera 10 Opera 9 iOS 4.2 iOS 1 2.2 browsers
  • 37. @font-face { font-family: 'Awesome Font'; src: url('awesome-font.ttf'); }
  • 38. @font-face { font-family: 'Awesome Font'; src: url('awesome-font.ttf'); }
  • 39. @font-face { font-family: 'Awesome Font'; src: url('awesome-font.ttf'); }
  • 40. @font-face { font-family: 'Awesome Font'; src: url('awesome-font.ttf'); }
  • 41. @font-face { font-family: 'Awesome Font'; src: url('awesome-font.ttf'); } h1 { font-family: 'Awesome Font', 'Georgia', serif; }
  • 42. @font-face { font-family: 'Awesome Font'; src: url('awesome-font.ttf'); } h1 { font-family: 'Awesome Font', 'Georgia', serif; }
  • 43. @font-face { font-family: 'Awesome Font'; src: url('awesome-font.ttf'); } h1 { font-family: 'Awesome Font', 'Georgia', serif; }
  • 44. @font-face { font-family: 'Awesome Font'; src: url('awesome-font.ttf'); } h1 { font-family: 'Awesome Font', 'Georgia', serif; }
  • 45. @font-face { font-family: 'Awesome Font'; src: url('awesome-font.ttf'); } h1 { font-family: 'Awesome Font', 'Georgia', serif; }
  • 46. @font-face { font-family: 'Awesome Font'; src: url('awesome-font.ttf'); } h1 { font-family: 'Awesome Font', 'Georgia', serif; }
  • 47. OTF/TTF SVG WOFF EOT IE9 IE9 IE5 FF3.5 FF3.5 FF3.6 Chrome 4 Chrome 0.3 Chrome 5 Safari 3.1 Safari 3.1 Opera 10 Opera 9 iOS 1 2.2 browsers
  • 48. @font-face {   font-family: 'Awesome Font';   src: url('awesome-font.eot'); /* IE 5-8 */   src: local('☺'), /* sneaky trick for IE */        url('awesome-font.woff') format('woff'), /* FF 3.6+, Chrome 5+, IE9 */        url('awesome-font.ttf') format('truetype'), /* Opera, Safari, iOS4.2+ */        url('awesome-font.svg#font') format('svg'); /* iOS <4.1 */ }
  • 49. @font-face {   font-family: 'Awesome Font';   src: url('awesome-font.eot'); /* IE 5-8 */   src: local('☺'), /* sneaky trick for IE */        url('awesome-font.woff') format('woff'), /* FF 3.6+, Chrome 5+, IE9 */        url('awesome-font.ttf') format('truetype'), /* Opera, Safari, iOS4.2+ */        url('awesome-font.svg#font') format('svg'); /* iOS <4.1 */ } @media screen and (max-device-width: 480px) { @font-face { font-family: "Awesome Font"; src: url("awesome-font.woff") format("woff"), url("GraublauWeb.otf") format("opentype"), url("GraublauWeb.svg#grablau") format("svg"); }}
  • 50. @font-face { font-family: 'Awesome Font'; src: url('awesome-font.eot'); /* IE9 Compat Modes */ src: url('awesome-font.eot?iefix') format('eot'), /* IE6-IE8 */ url('awesome-font.woff') format('woff'), /* Modern Browsers */ url('awesome-font.ttf') format('truetype'), /* Safari, Android, iOS */ url('awesome-font.svg#svgFontName') format('svg'); /* Legacy iOS */ }
  • 51. <script type="text/javascript" src="http://use.typekit.com/xxxxxxx.js"></script> <script type="text/javascript">try{Typekit.load();}catch(e){}</script>
  • 52.
  • 54.
  • 55.
  • 56. Rendering factors 1) type design philosophy 2) font file and outline format 3) hinting 4) operating systems 5) web browsers 6) font smoothing preferences
  • 57. Rendering factors 1) type design philosophy 2) font file and outline format 3) hinting 4) operating systems 5) web browsers 6) font smoothing preferences
  • 58. Rendering factors 1) type design philosophy 2) font file and outline format 3) hinting 4) operating systems 5) web browsers 6) font smoothing preferences
  • 59. Rendering factors 1) type design philosophy 2) font file and outline format 3) hinting 4) operating systems 5) web browsers 6) font smoothing preferences
  • 60. Rendering factors 1) type design philosophy 2) font file and outline format 3) hinting 4) operating systems 5) web browsers 6) font smoothing preferences
  • 61. Rendering factors 1) type design philosophy 2) font file and outline format 3) hinting 4) operating systems 5) web browsers 6) font smoothing preferences
  • 62. Rendering factors 1) type design philosophy 2) font file and outline format 3) hinting 4) operating systems 5) web browsers 6) font smoothing preferences
  • 63. Rendering factors 1) type design philosophy 2) font file and outline format 3) hinting 4) operating systems 5) web browsers 6) font smoothing preferences
  • 64.
  • 65.
  • 66.
  • 67. Rendering factors 1) type design philosophy 2) font file and outline format 3) hinting 4) operating systems 5) web browsers 6) font smoothing preferences
  • 68.
  • 71.
  • 72. Rendering factors 1) type design philosophy 2) font file and outline format 3) hinting 4) operating systems 5) web browsers 6) font smoothing preferences
  • 73.
  • 74.
  • 75.
  • 76.
  • 77.
  • 78.
  • 79.
  • 80. Rendering factors 1) type design philosophy 2) font file and outline format 3) hinting 4) operating systems 5) web browsers 6) font smoothing preferences
  • 81. Rendering factors 1) type design philosophy 2) font file and outline format 3) hinting 4) operating systems 5) web browsers 6) font smoothing preferences
  • 82. Rendering factors 1) type design philosophy 2) font file and outline format 3) hinting 4) operating systems 5) web browsers 6) font smoothing preferences
  • 85. GDI + Core Text ClearType
  • 86. Core Text GDI + Standard
  • 87. Core + no GDI Text
  • 88. WTF?!
  • 89.
  • 90.
  • 92.
  • 93.
  • 94.
  • 95.
  • 96. <script type="text/javascript" src="http://use.typekit.com/ xxxxxxx.js"></script> <script type="text/javascript">try{Typekit.load();}catch(e){}</ script> <style type="text/css"> .wf-loading { /* styles to use when web fonts are loading */ } .wf-active { /* styles to use when web fonts are active */ } .wf-inactive { /* styles to use when web fonts are inactive */ } </style>
  • 99. <h1 class="fancy_title"> <span class="char1">1</span> <span class="char2">9</span> <span class="char3">6</span> <span class="char4">2</span> </h1>
  • 100. h1.fancy_title .char3, h1.fancy_title .char4 { position: relative; top: -10px; }
  • 101.
  • 102.
  • 103. <h1 class="fancy_title"> <span class="char1">1</span> <span class="char2">9</span> <span class="char3">7</span> <span class="char4">2</span> </h1>
  • 104. <h1 class="fancy_title"> <span class="char1">1</span> <span class="char2">9</span> <span class="char3">7</span> <span class="char4">2</span> </h1>
  • 106.

Editor's Notes

  1. \n
  2. \n
  3. \n
  4. \n
  5. \n
  6. \n
  7. \n
  8. \n
  9. \n
  10. \n
  11. \n
  12. \n
  13. \n
  14. \n
  15. \n
  16. \n
  17. \n
  18. \n
  19. \n
  20. \n
  21. In the beginning, there were fonts.\n
  22. \n
  23. \n
  24. \n
  25. \n
  26. \n
  27. \n
  28. \n
  29. \n
  30. \n
  31. So, in came Typekit. \n+ Weren&amp;#x2019;t the first to get into the space. (Kearnest and Typeotech)\n+ a fully devoted team.\n
  32. \n
  33. \n
  34. \n
  35. \n
  36. \n
  37. \n
  38. \n
  39. \n
  40. \n
  41. \n
  42. \n
  43. \n
  44. \n
  45. \n
  46. \n
  47. \n
  48. \n
  49. \n
  50. \n
  51. \n
  52. \n
  53. \n
  54. \n
  55. \n
  56. \n
  57. \n
  58. \n
  59. \n
  60. \n
  61. \n
  62. \n
  63. \n
  64. \n
  65. \n
  66. \n
  67. \n
  68. \n
  69. \n
  70. \n
  71. \n
  72. \n
  73. \n
  74. \n
  75. \n
  76. \n
  77. \n
  78. \n
  79. \n
  80. \n
  81. \n
  82. \n
  83. \n
  84. \n
  85. \n
  86. \n
  87. \n
  88. \n
  89. \n
  90. \n
  91. \n
  92. \n
  93. \n
  94. \n
  95. \n
  96. \n
  97. \n
  98. \n
  99. \n
  100. \n
  101. \n
  102. \n
  103. \n
  104. \n
  105. \n
  106. \n
  107. \n
  108. \n
  109. \n