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

Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
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
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
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
 

Recently uploaded (20)

Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
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
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
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...
 

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