SlideShare a Scribd company logo
1 of 41
Download to read offline
The Type Revolutionary’s
Cookbook
Aaron Stanush
Kevin O’Leary
Aaron Stanush             Kevin O’Leary
 Partner and Designer         UX designer




aaron@fourkitchens.com   kevin.o'leary@acquia.com
    @aaronstanush
Why do we need more fonts?
Because we do
Because...
‣   Type is beautiful
‣   Variety adds richness
‣   Type adds meaning
A little bit of history
The golden age of type
Timeline
 ‣   1975: Steve Jobs takes a calligraphy class
 ‣   1984: The First Scalable Type Fonts
 ‣   1991: The Unicode Standard
 ‣   1995: Thousands of scalable fonts in use
 ‣   1998: @font-face introduced
 ‣   2007: Typekit launched
 ‣   2010: All major browsers support @font-face
Before                            After
‣   sIFR                          ‣   @font-face + WOFF
    ‣   Flash                         ‣   Just CSS
    ‣   Liked by foundries            ‣   Still serves files but in a more
                                          secure way
‣   Cufón
    ‣   Javascript/JSON
    ‣   Lightweight, not widely
        trusted for licensing
Then
‣   Arial          ‣   Times
‣   Georgia        ‣   Palatino
‣   Trebuchet MS   ‣   Geneva
‣   Verdana        ‣   Courier New
‣   Impact         ‣   Comic Sans
lostworldsfairs.com/moon
FOUNDRIES           DESIGNERS


                      &



   Museo           Gotham       Avenir




FORMATS      TTF     WOFF    EOT    SVG



                   @font-face

                                          FONT
  DIY                                     HOSTING
                                          SERVICES
Where do fonts come from?
Boutiques and mega-stores
Commerical fonts
‣   Foundries and designers
    ‣   Hoefler Frere-Jones, FontFont, House Industries, EmType,
        Emigre, P22
‣   Font stores
    ‣   FontShop.com
    ‣   MyFonts.com
    ‣   Fontspring.com
Web font licensing
It’s complicated. Every foundry or designer has their own rules.
webfonts.info/wiki/index.php?title=Web_fonts_licensing_overview
Commercial-free or open source
‣   Font Squirrel
    ‣   fontsquirrel.com
‣   Google web fonts
    ‣   code.google.com/webfonts
‣   League of Movable Type
    ‣   theleagueofmovabletype.com
SIL Open font license
‣   scripts.sil.org/OFL



“
       It means that you're allowed to use these fonts personally or
       commercially, as long as you credit the original creator, and if
       you made tweaks and changes to the typefaces, any new
       typefaces resulting from it should be licensed under the
       same terms. That way all our fonts and any new fonts
       resulting from them will always be open.

                                              theleagueofmoveabletype.com/manifesto
Web font formats
Many formats for many browsers
Web font formats
‣   Truetype (TTF)                ‣   Web open font format
                                      (WOFF)
    ‣   Standard desktop format
                                      ‣   W3C standard, soon
‣   Embedded OpenType
    (EOT)                             ‣   Smaller, contains metadata
    ‣   TrueType + DRM            ‣   Scalable Vector Graphics
                                      (SVG)
    ‣   Created by Microsoft
                                      ‣   Not an actual font format
Browser support
Format   Firefox 3.6+   Chrome 6+   IE 6-8     IE9       Safari 3.1+     iOS 4.2     Android 2.2



 EOT                                  •         •

 TTF          •            •                                 •             •             •

 SVG                       •                                               •

WOFF          •            •                    •
                                    webfonts.info/wiki/index.php?title=@font-face_browser_support
Do it yourself
Font kits and bulletproof @font-face syntax
@font-face kits
‣   Contains:
    ‣   EOT, WOFF, TTF, SVG
‣   Pre-built kits
    ‣   Paid: fontspring.com and other shops
    ‣   Free: fontsquirrel.com/fontface
‣   Build your own/host your own
    ‣   fontsquirrel.com/fontface/generator
Basic @font-face
@font-face {
  font-family: Gotham;
  src: url('gotham.ttf');
  }



h1 {
  font-family: Gotham;
  }
Bulletproof @font-face

@font-face {
  font-family: 'Gotham';
    src: url('gotham.eot') format('eot'),
    src: url('gotham.eot?iefix') format('eot'),
       url('gotham.woff') format('woff'),
       url('gotham.ttf') format('truetype'),
       url('gotham.svg#gotham') format('svg');
  }

                          fontspring.com/blog/the-new-bulletproof-font-face-syntax
Define the first EOT
@font-face {
  font-family: 'Gotham';
    src: url('gotham.eot') format('eot'),
    src: url('gotham.eot?iefix') format('eot'),
       url('gotham.woff') format('woff'),
       url('gotham.ttf') format('truetype'),
       url('gotham.svg#gotham') format('svg');
  }

     This ensures the EOT is delivered to IE 9 while in IE 7/8 compatibility mode.
Define the second EOT
@font-face {
  font-family: 'Gotham';
    src: url('gotham.eot') format('eot'),
    src: url('gotham.eot?iefix') format('eot'),
       url('gotham.woff') format('woff'),
       url('gotham.ttf') format('truetype'),
       url('gotham.svg#gotham') format('svg');
  }


        The question mark tricks IE 6-8 into ignoring the rest of the formats.
Define the WOFF

@font-face {
  font-family: 'Gotham';
    src: url('gotham.eot') format('eot'),
    src: url('gotham.eot?iefix') format('eot'),
       url('gotham.woff') format('woff'),
       url('gotham.ttf') format('truetype'),
       url('gotham.svg#gotham') format('svg');
  }
Define the True-type

@font-face {
  font-family: 'Gotham';
    src: url('gotham.eot') format('eot'),
    src: url('gotham.eot?iefix') format('eot'),
       url('gotham.woff') format('woff'),
       url('gotham.ttf') format('truetype'),
       url('gotham.svg#gotham') format('svg');
  }
Define the SVG

@font-face {
  font-family: 'Gotham';
    src: url('gotham.eot') format('eot'),
    src: url('gotham.eot?iefix') format('eot'),
       url('gotham.woff') format('woff'),
       url('gotham.ttf') format('truetype'),
       url('gotham.svg#gotham') format('svg');
  }

   If the # value was not provided for you, open the SVG file in a text editor and look for:
                                font id="mySVGFontName"
Font hosting services
An easier way
Font hosting
‣   Pros
    ‣   Large selection of high-quality fonts
    ‣   Very little coding
    ‣   No worrying about licensing
    ‣   No expensive font purchases
‣   Cons
    ‣   Not free – pay by pageviews or per font
Font hosting services
‣   fonts.com
‣   fontslive.com
‣   fontdeck.com
‣   typekit.com
‣   web-type.com
‣   kernest.com and fontue.com
‣   webink.com
Font hosting services




                        fffo.grahambird.co.uk
Ensuring quality
It’s a mixed bag
Three steps to quality
‣   Know your foundry
‣   Use appropriately
‣   Test, test, test
Getting the hint
Not all fonts are created equal
What the future holds
What we can hope for
‣   Hinting will go away (eventually)
‣   We will consolidate on one format (WOFF)
‣   All typographic tools available to print designers will
    become part of CSS
‣   Optically scalable fonts
Optical scaling
@font-your-face module
‣   drupal.org/project/fontyourface
    ‣   Support for Typekit, Google Fonts, Fonts.com, Font Squirrel,
        Kernest, and FontDeck
    ‣   Enabling a font happens automatically, e.g. no JS to add
    ‣   Can apply fonts to site elements through the UI
What did you think?

Locate this session on the DCC website:
http://chicago2011.drupal.org/sessions

Click the “Take the Survey” link.


Thanks!

More Related Content

Similar to The type revolutionary's cookbook

CSS3: the new style council
CSS3: the new style councilCSS3: the new style council
CSS3: the new style councilChris Mills
 
CSS @font-face : Personalized fonts
CSS @font-face : Personalized fontsCSS @font-face : Personalized fonts
CSS @font-face : Personalized fontsYves Van Goethem
 
Angels versus demons: balancing shiny and inclusive
Angels versus demons: balancing shiny and inclusiveAngels versus demons: balancing shiny and inclusive
Angels versus demons: balancing shiny and inclusiveChris Mills
 
Web Fonts: Why Bother?
Web Fonts: Why Bother?Web Fonts: Why Bother?
Web Fonts: Why Bother?Greg Veen
 
SmashingConf Whister: Developers Ampersandwich
SmashingConf Whister: Developers AmpersandwichSmashingConf Whister: Developers Ampersandwich
SmashingConf Whister: Developers AmpersandwichJenn Lukas
 
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
 
Successful Web Typography - The Developer's Ampersandwich
Successful Web Typography - The Developer's AmpersandwichSuccessful Web Typography - The Developer's Ampersandwich
Successful Web Typography - The Developer's AmpersandwichJenn Lukas
 
Web font services: March 2011
Web font services: March 2011Web font services: March 2011
Web font services: March 2011RZasadzinski
 
Webfonts: Demystified
Webfonts: DemystifiedWebfonts: Demystified
Webfonts: DemystifiedMel Choyce
 
Webfonts and Web Typography
Webfonts and Web TypographyWebfonts and Web Typography
Webfonts and Web TypographyJan Wilson
 
Employing Custom Fonts
Employing Custom FontsEmploying Custom Fonts
Employing Custom FontsPaul Irish
 
Font Performance - NYC WebPerf Meetup April '24
Font Performance - NYC WebPerf Meetup April '24Font Performance - NYC WebPerf Meetup April '24
Font Performance - NYC WebPerf Meetup April '24Paul Calvano
 
Cool Stuff for Web Typography
Cool Stuff for Web TypographyCool Stuff for Web Typography
Cool Stuff for Web TypographyOliver Linke
 
Typography online
Typography onlineTypography online
Typography onlineJake Smith
 
Font embedding for the web
Font embedding for the webFont embedding for the web
Font embedding for the webWojtek Zając
 

Similar to The type revolutionary's cookbook (20)

The State of Web Type
The State of Web TypeThe State of Web Type
The State of Web Type
 
The Trouble With Type
The Trouble With TypeThe Trouble With Type
The Trouble With Type
 
CSS3: the new style council
CSS3: the new style councilCSS3: the new style council
CSS3: the new style council
 
CSS @font-face : Personalized fonts
CSS @font-face : Personalized fontsCSS @font-face : Personalized fonts
CSS @font-face : Personalized fonts
 
Angels versus demons: balancing shiny and inclusive
Angels versus demons: balancing shiny and inclusiveAngels versus demons: balancing shiny and inclusive
Angels versus demons: balancing shiny and inclusive
 
Web Fonts: Why Bother?
Web Fonts: Why Bother?Web Fonts: Why Bother?
Web Fonts: Why Bother?
 
Web fonts
Web fontsWeb fonts
Web fonts
 
SmashingConf Whister: Developers Ampersandwich
SmashingConf Whister: Developers AmpersandwichSmashingConf Whister: Developers Ampersandwich
SmashingConf Whister: Developers Ampersandwich
 
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
 
Successful Web Typography - The Developer's Ampersandwich
Successful Web Typography - The Developer's AmpersandwichSuccessful Web Typography - The Developer's Ampersandwich
Successful Web Typography - The Developer's Ampersandwich
 
Web font services: March 2011
Web font services: March 2011Web font services: March 2011
Web font services: March 2011
 
Webfonts: Demystified
Webfonts: DemystifiedWebfonts: Demystified
Webfonts: Demystified
 
Webfonts and Web Typography
Webfonts and Web TypographyWebfonts and Web Typography
Webfonts and Web Typography
 
Employing Custom Fonts
Employing Custom FontsEmploying Custom Fonts
Employing Custom Fonts
 
Font Performance - NYC WebPerf Meetup April '24
Font Performance - NYC WebPerf Meetup April '24Font Performance - NYC WebPerf Meetup April '24
Font Performance - NYC WebPerf Meetup April '24
 
Web Typography
Web TypographyWeb Typography
Web Typography
 
Cool Stuff for Web Typography
Cool Stuff for Web TypographyCool Stuff for Web Typography
Cool Stuff for Web Typography
 
Typography online
Typography onlineTypography online
Typography online
 
Font embedding for the web
Font embedding for the webFont embedding for the web
Font embedding for the web
 

More from Four Kitchens

Four Kitchens Presents: Future of the CMS
Four Kitchens Presents: Future of the CMSFour Kitchens Presents: Future of the CMS
Four Kitchens Presents: Future of the CMSFour Kitchens
 
Four Kitchens: We make BIG websites
Four Kitchens: We make BIG websitesFour Kitchens: We make BIG websites
Four Kitchens: We make BIG websitesFour Kitchens
 
Don't Design Websites. Design Web SYSTEMS! (UT Austin Drupal Users Group)
Don't Design Websites. Design Web SYSTEMS! (UT Austin Drupal Users Group)Don't Design Websites. Design Web SYSTEMS! (UT Austin Drupal Users Group)
Don't Design Websites. Design Web SYSTEMS! (UT Austin Drupal Users Group)Four Kitchens
 
No RFPs! Why requests for proposal are bad for business (and how we can stop ...
No RFPs! Why requests for proposal are bad for business (and how we can stop ...No RFPs! Why requests for proposal are bad for business (and how we can stop ...
No RFPs! Why requests for proposal are bad for business (and how we can stop ...Four Kitchens
 
Big Websites for Small Screens: ICANN.org Case Study
Big Websites for Small Screens: ICANN.org Case StudyBig Websites for Small Screens: ICANN.org Case Study
Big Websites for Small Screens: ICANN.org Case StudyFour Kitchens
 
UX design for every screen
UX design for every screenUX design for every screen
UX design for every screenFour Kitchens
 
Don't Design Websites. Design Web SYSTEMS! (BADCamp 2011)
Don't Design Websites. Design Web SYSTEMS! (BADCamp 2011)Don't Design Websites. Design Web SYSTEMS! (BADCamp 2011)
Don't Design Websites. Design Web SYSTEMS! (BADCamp 2011)Four Kitchens
 
Don't Design Websites. Design Web SYSTEMS! (DrupalCon London 2011)
Don't Design Websites. Design Web SYSTEMS! (DrupalCon London 2011)Don't Design Websites. Design Web SYSTEMS! (DrupalCon London 2011)
Don't Design Websites. Design Web SYSTEMS! (DrupalCon London 2011)Four Kitchens
 
Don't Design Websites. Design Web SYSTEMS! (DrupalCamp LA 2011)
Don't Design Websites. Design Web SYSTEMS! (DrupalCamp LA 2011)Don't Design Websites. Design Web SYSTEMS! (DrupalCamp LA 2011)
Don't Design Websites. Design Web SYSTEMS! (DrupalCamp LA 2011)Four Kitchens
 
Accelerated grid theming using NineSixty (DrupalCamp LA 2011)
Accelerated grid theming using NineSixty (DrupalCamp LA 2011)Accelerated grid theming using NineSixty (DrupalCamp LA 2011)
Accelerated grid theming using NineSixty (DrupalCamp LA 2011)Four Kitchens
 
Don't Design Websites. Design Web SYSTEMS! (Dallas Drupal Days 2011)
Don't Design Websites. Design Web SYSTEMS! (Dallas Drupal Days 2011)Don't Design Websites. Design Web SYSTEMS! (Dallas Drupal Days 2011)
Don't Design Websites. Design Web SYSTEMS! (Dallas Drupal Days 2011)Four Kitchens
 
Building Responsive Websites and Apps with Drupal
Building Responsive Websites and Apps with DrupalBuilding Responsive Websites and Apps with Drupal
Building Responsive Websites and Apps with DrupalFour Kitchens
 
Accelerated grid theming using NineSixty (Dallas Drupal Days 2011)
Accelerated grid theming using NineSixty (Dallas Drupal Days 2011)Accelerated grid theming using NineSixty (Dallas Drupal Days 2011)
Accelerated grid theming using NineSixty (Dallas Drupal Days 2011)Four Kitchens
 
Designing future proof websites
Designing future proof websitesDesigning future proof websites
Designing future proof websitesFour Kitchens
 
The Web Chef Cookbook
The Web Chef CookbookThe Web Chef Cookbook
The Web Chef CookbookFour Kitchens
 
Don't Design Websites. Design Web SYSTEMS! (DrupalCamp Stockholm 2011)
Don't Design Websites. Design Web SYSTEMS! (DrupalCamp Stockholm 2011)Don't Design Websites. Design Web SYSTEMS! (DrupalCamp Stockholm 2011)
Don't Design Websites. Design Web SYSTEMS! (DrupalCamp Stockholm 2011)Four Kitchens
 
Don't Design Websites. Design Web SYSTEMS! (DrupalCon Chicago 2011)
Don't Design Websites. Design Web SYSTEMS! (DrupalCon Chicago 2011)Don't Design Websites. Design Web SYSTEMS! (DrupalCon Chicago 2011)
Don't Design Websites. Design Web SYSTEMS! (DrupalCon Chicago 2011)Four Kitchens
 

More from Four Kitchens (20)

Four Kitchens Presents: Future of the CMS
Four Kitchens Presents: Future of the CMSFour Kitchens Presents: Future of the CMS
Four Kitchens Presents: Future of the CMS
 
Four Kitchens: We make BIG websites
Four Kitchens: We make BIG websitesFour Kitchens: We make BIG websites
Four Kitchens: We make BIG websites
 
Don't Design Websites. Design Web SYSTEMS! (UT Austin Drupal Users Group)
Don't Design Websites. Design Web SYSTEMS! (UT Austin Drupal Users Group)Don't Design Websites. Design Web SYSTEMS! (UT Austin Drupal Users Group)
Don't Design Websites. Design Web SYSTEMS! (UT Austin Drupal Users Group)
 
No RFPs! Why requests for proposal are bad for business (and how we can stop ...
No RFPs! Why requests for proposal are bad for business (and how we can stop ...No RFPs! Why requests for proposal are bad for business (and how we can stop ...
No RFPs! Why requests for proposal are bad for business (and how we can stop ...
 
Big Websites for Small Screens: ICANN.org Case Study
Big Websites for Small Screens: ICANN.org Case StudyBig Websites for Small Screens: ICANN.org Case Study
Big Websites for Small Screens: ICANN.org Case Study
 
UX design for every screen
UX design for every screenUX design for every screen
UX design for every screen
 
Don't Design Websites. Design Web SYSTEMS! (BADCamp 2011)
Don't Design Websites. Design Web SYSTEMS! (BADCamp 2011)Don't Design Websites. Design Web SYSTEMS! (BADCamp 2011)
Don't Design Websites. Design Web SYSTEMS! (BADCamp 2011)
 
Don't Design Websites. Design Web SYSTEMS! (DrupalCon London 2011)
Don't Design Websites. Design Web SYSTEMS! (DrupalCon London 2011)Don't Design Websites. Design Web SYSTEMS! (DrupalCon London 2011)
Don't Design Websites. Design Web SYSTEMS! (DrupalCon London 2011)
 
Don't Design Websites. Design Web SYSTEMS! (DrupalCamp LA 2011)
Don't Design Websites. Design Web SYSTEMS! (DrupalCamp LA 2011)Don't Design Websites. Design Web SYSTEMS! (DrupalCamp LA 2011)
Don't Design Websites. Design Web SYSTEMS! (DrupalCamp LA 2011)
 
Accelerated grid theming using NineSixty (DrupalCamp LA 2011)
Accelerated grid theming using NineSixty (DrupalCamp LA 2011)Accelerated grid theming using NineSixty (DrupalCamp LA 2011)
Accelerated grid theming using NineSixty (DrupalCamp LA 2011)
 
Don't Design Websites. Design Web SYSTEMS! (Dallas Drupal Days 2011)
Don't Design Websites. Design Web SYSTEMS! (Dallas Drupal Days 2011)Don't Design Websites. Design Web SYSTEMS! (Dallas Drupal Days 2011)
Don't Design Websites. Design Web SYSTEMS! (Dallas Drupal Days 2011)
 
Building Responsive Websites and Apps with Drupal
Building Responsive Websites and Apps with DrupalBuilding Responsive Websites and Apps with Drupal
Building Responsive Websites and Apps with Drupal
 
Accelerated grid theming using NineSixty (Dallas Drupal Days 2011)
Accelerated grid theming using NineSixty (Dallas Drupal Days 2011)Accelerated grid theming using NineSixty (Dallas Drupal Days 2011)
Accelerated grid theming using NineSixty (Dallas Drupal Days 2011)
 
Intro to Drush
Intro to DrushIntro to Drush
Intro to Drush
 
Teaching Drupal
Teaching DrupalTeaching Drupal
Teaching Drupal
 
Big Websites
Big WebsitesBig Websites
Big Websites
 
Designing future proof websites
Designing future proof websitesDesigning future proof websites
Designing future proof websites
 
The Web Chef Cookbook
The Web Chef CookbookThe Web Chef Cookbook
The Web Chef Cookbook
 
Don't Design Websites. Design Web SYSTEMS! (DrupalCamp Stockholm 2011)
Don't Design Websites. Design Web SYSTEMS! (DrupalCamp Stockholm 2011)Don't Design Websites. Design Web SYSTEMS! (DrupalCamp Stockholm 2011)
Don't Design Websites. Design Web SYSTEMS! (DrupalCamp Stockholm 2011)
 
Don't Design Websites. Design Web SYSTEMS! (DrupalCon Chicago 2011)
Don't Design Websites. Design Web SYSTEMS! (DrupalCon Chicago 2011)Don't Design Websites. Design Web SYSTEMS! (DrupalCon Chicago 2011)
Don't Design Websites. Design Web SYSTEMS! (DrupalCon Chicago 2011)
 

Recently uploaded

WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
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
 

Recently uploaded (20)

WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
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
 

The type revolutionary's cookbook

  • 2. Aaron Stanush Kevin O’Leary Partner and Designer UX designer aaron@fourkitchens.com kevin.o'leary@acquia.com @aaronstanush
  • 3. Why do we need more fonts? Because we do
  • 4. Because... ‣ Type is beautiful ‣ Variety adds richness ‣ Type adds meaning
  • 5.
  • 6. A little bit of history The golden age of type
  • 7. Timeline ‣ 1975: Steve Jobs takes a calligraphy class ‣ 1984: The First Scalable Type Fonts ‣ 1991: The Unicode Standard ‣ 1995: Thousands of scalable fonts in use ‣ 1998: @font-face introduced ‣ 2007: Typekit launched ‣ 2010: All major browsers support @font-face
  • 8. Before After ‣ sIFR ‣ @font-face + WOFF ‣ Flash ‣ Just CSS ‣ Liked by foundries ‣ Still serves files but in a more secure way ‣ Cufón ‣ Javascript/JSON ‣ Lightweight, not widely trusted for licensing
  • 9. Then ‣ Arial ‣ Times ‣ Georgia ‣ Palatino ‣ Trebuchet MS ‣ Geneva ‣ Verdana ‣ Courier New ‣ Impact ‣ Comic Sans
  • 11. FOUNDRIES DESIGNERS & Museo Gotham Avenir FORMATS TTF WOFF EOT SVG @font-face FONT DIY HOSTING SERVICES
  • 12. Where do fonts come from? Boutiques and mega-stores
  • 13. Commerical fonts ‣ Foundries and designers ‣ Hoefler Frere-Jones, FontFont, House Industries, EmType, Emigre, P22 ‣ Font stores ‣ FontShop.com ‣ MyFonts.com ‣ Fontspring.com
  • 14. Web font licensing It’s complicated. Every foundry or designer has their own rules.
  • 16. Commercial-free or open source ‣ Font Squirrel ‣ fontsquirrel.com ‣ Google web fonts ‣ code.google.com/webfonts ‣ League of Movable Type ‣ theleagueofmovabletype.com
  • 17. SIL Open font license ‣ scripts.sil.org/OFL “ It means that you're allowed to use these fonts personally or commercially, as long as you credit the original creator, and if you made tweaks and changes to the typefaces, any new typefaces resulting from it should be licensed under the same terms. That way all our fonts and any new fonts resulting from them will always be open. theleagueofmoveabletype.com/manifesto
  • 18. Web font formats Many formats for many browsers
  • 19. Web font formats ‣ Truetype (TTF) ‣ Web open font format (WOFF) ‣ Standard desktop format ‣ W3C standard, soon ‣ Embedded OpenType (EOT) ‣ Smaller, contains metadata ‣ TrueType + DRM ‣ Scalable Vector Graphics (SVG) ‣ Created by Microsoft ‣ Not an actual font format
  • 20. Browser support Format Firefox 3.6+ Chrome 6+ IE 6-8 IE9 Safari 3.1+ iOS 4.2 Android 2.2 EOT • • TTF • • • • • SVG • • WOFF • • • webfonts.info/wiki/index.php?title=@font-face_browser_support
  • 21. Do it yourself Font kits and bulletproof @font-face syntax
  • 22. @font-face kits ‣ Contains: ‣ EOT, WOFF, TTF, SVG ‣ Pre-built kits ‣ Paid: fontspring.com and other shops ‣ Free: fontsquirrel.com/fontface ‣ Build your own/host your own ‣ fontsquirrel.com/fontface/generator
  • 23. Basic @font-face @font-face { font-family: Gotham; src: url('gotham.ttf'); } h1 { font-family: Gotham; }
  • 24. Bulletproof @font-face @font-face { font-family: 'Gotham'; src: url('gotham.eot') format('eot'), src: url('gotham.eot?iefix') format('eot'), url('gotham.woff') format('woff'), url('gotham.ttf') format('truetype'), url('gotham.svg#gotham') format('svg'); } fontspring.com/blog/the-new-bulletproof-font-face-syntax
  • 25. Define the first EOT @font-face { font-family: 'Gotham'; src: url('gotham.eot') format('eot'), src: url('gotham.eot?iefix') format('eot'), url('gotham.woff') format('woff'), url('gotham.ttf') format('truetype'), url('gotham.svg#gotham') format('svg'); } This ensures the EOT is delivered to IE 9 while in IE 7/8 compatibility mode.
  • 26. Define the second EOT @font-face { font-family: 'Gotham'; src: url('gotham.eot') format('eot'), src: url('gotham.eot?iefix') format('eot'), url('gotham.woff') format('woff'), url('gotham.ttf') format('truetype'), url('gotham.svg#gotham') format('svg'); } The question mark tricks IE 6-8 into ignoring the rest of the formats.
  • 27. Define the WOFF @font-face { font-family: 'Gotham'; src: url('gotham.eot') format('eot'), src: url('gotham.eot?iefix') format('eot'), url('gotham.woff') format('woff'), url('gotham.ttf') format('truetype'), url('gotham.svg#gotham') format('svg'); }
  • 28. Define the True-type @font-face { font-family: 'Gotham'; src: url('gotham.eot') format('eot'), src: url('gotham.eot?iefix') format('eot'), url('gotham.woff') format('woff'), url('gotham.ttf') format('truetype'), url('gotham.svg#gotham') format('svg'); }
  • 29. Define the SVG @font-face { font-family: 'Gotham'; src: url('gotham.eot') format('eot'), src: url('gotham.eot?iefix') format('eot'), url('gotham.woff') format('woff'), url('gotham.ttf') format('truetype'), url('gotham.svg#gotham') format('svg'); } If the # value was not provided for you, open the SVG file in a text editor and look for: font id="mySVGFontName"
  • 31. Font hosting ‣ Pros ‣ Large selection of high-quality fonts ‣ Very little coding ‣ No worrying about licensing ‣ No expensive font purchases ‣ Cons ‣ Not free – pay by pageviews or per font
  • 32. Font hosting services ‣ fonts.com ‣ fontslive.com ‣ fontdeck.com ‣ typekit.com ‣ web-type.com ‣ kernest.com and fontue.com ‣ webink.com
  • 33. Font hosting services fffo.grahambird.co.uk
  • 35. Three steps to quality ‣ Know your foundry ‣ Use appropriately ‣ Test, test, test
  • 36. Getting the hint Not all fonts are created equal
  • 38. What we can hope for ‣ Hinting will go away (eventually) ‣ We will consolidate on one format (WOFF) ‣ All typographic tools available to print designers will become part of CSS ‣ Optically scalable fonts
  • 40. @font-your-face module ‣ drupal.org/project/fontyourface ‣ Support for Typekit, Google Fonts, Fonts.com, Font Squirrel, Kernest, and FontDeck ‣ Enabling a font happens automatically, e.g. no JS to add ‣ Can apply fonts to site elements through the UI
  • 41. What did you think? Locate this session on the DCC website: http://chicago2011.drupal.org/sessions Click the “Take the Survey” link. Thanks!