SlideShare une entreprise Scribd logo
1  sur  37
Slide Show
Font Sampler
      White on Black Edition, v2012-05-28
        How well do fonts convert online?
  How good do they look on washed up projectors?
    How big is too big? How small is too small?
Nick Galbreath nickg@client9.com @ngalbreath
Original Sources and
Alternative Versions
    This presentation is available on multiple
 online slide-sharing services and comes in both
      black-text on white-background and
             white-on-black versions.


   http://goo.gl/Pwxoc
blog.client9.com/2012/05/
Problems

• How good is the font conversion when a
  presentation is posted online?
• How good to fonts look on washed out
  projectors? From how far away?
• For plain text? For computer code?
Solutions
• This deck contains the most popular sans-
  serif fonts in 18, 24, 36, 42, 48, 64 and if
  room, 72 point-size.
• Then common monospace fonts at
  24, 30, 32 points along with some computer
  code at 32 points.
• This was created with Keynote 5.1.1 using a
  slide size of 1024x768 on Mac OS X 10.7.4
  and uploaded to various services.
• The quick brown fox jumped over the
  lazy dog. Arial 42.

•The quick brown fox jumped over the
  lazy dog. Futura 42.

• The quick brown fox jumped over the lazy
  dog. Gill Sans 42.

• The quick brown fox jumped over the
  lazy dog. Helvetica 42.

• The quick brown fox jumped over the
  lazy dog. Helvetica Neue 42.

• The quick brown fox jumped over the
  lazy dog. Helvetica Neue Medium 42.
• The quick brown fox jumped over the
  lazy dog. Helvetica Neue 42.
• The quick brown fox jumped over the
  lazy dog. Trebuchet MS 42.

• The quick brown fox jumped over
  the lazy dog. Verdana 42.

• The quick brown fox jumped over the
  lazy dog. Helvetica Light 42

• The quick brown fox jumped over the
  lazy dog. Helvetica Neue Light 42
•   The quick brown fox jumped over the lazy dog.
    Arial 36.

•The quick brown fox jumped over the lazy
    dog. Futura 36.

•   The quick brown fox jumped over the lazy dog.
    Gill Sans 36.

•   The quick brown fox jumped over the lazy dog.
    Helvetica 36.

• The quick brown fox jumped over the lazy
    dog. Helvetica Neue 36.

• The quick brown fox jumped over the lazy
    dog. Helvetica Neue Medium 36.
• The quick brown fox jumped over the lazy
    dog. Helvetica Neue 36.

• The quick brown fox jumped over the lazy
    dog. Trebuchet MS 36.

• The quick brown fox jumped over the
    lazy dog. Verdana 36.

• The quick brown fox jumped over the lazy
    dog. Helvetica Light 36

• The quick brown fox jumped over the lazy dog.
    Helvetica Neue Light 36

•   The quick brown fox jumped over the lazy dog.
    Helvetica Neue Light 36
•   The quick brown fox jumped over the lazy dog.
    Arial 30.

• The quick brown fox jumped over the lazy dog.
    Futura 30.

•   The quick brown fox jumped over the lazy dog.
    Gill Sans 30.

•   The quick brown fox jumped over the lazy dog.
    Helvetica 30.

•   The quick brown fox jumped over the lazy dog.
    Helvetica Neue 30.

•   The quick brown fox jumped over the lazy dog.
    Helvetica Neue Medium 30.
•   The quick brown fox jumped over the lazy dog.
    Helvetica Neue 30.

•   The quick brown fox jumped over the lazy dog.
    Trebuchet MS 30.

•   The quick brown fox jumped over the lazy dog.
    Verdana 30.

•   The quick brown fox jumped over the lazy dog.
    Helvetica Light 30

•   The quick brown fox jumped over the lazy dog.
    Helvetica Neue Light 30
Arial
The quick brown fox jumped
   over the lazy dog. 72
   The quick brown fox jumped
      over the lazy dog. 64
 The quick brown fox jumped over the lazy
                 dog. 48
The quick brown fox jumped over the lazy dog. 42
   The quick brown fox jumped over the lazy dog. 36
          The quick brown fox jumped over the lazy dog. 24
               The quick brown fox jumped over the lazy dog. 18
Futura Medium
  The quick brown fox jumped
     over the lazy dog. 64
The quick brown fox jumped over the lazy
                dog. 48
The quick brown fox jumped over the lazy dog.
 The quick brown fox jumped over the lazy dog. 36
         The quick brown fox jumped over the lazy dog. 24
               The quick brown fox jumped over the lazy dog.18
Gill Sans Regular
 The quick brown fox jumped
    over the lazy dog. 72
The quick brown fox jumped over
         the lazy dog. 64
The quick brown fox jumped over the lazy dog.
 The quick brown fox jumped over the lazy dog. 42
    The quick brown fox jumped over the lazy dog. 36
            The quick brown fox jumped over the lazy dog. 24
                  The quick brown fox jumped over the lazy dog. 18
Helvetica Regular
The quick brown fox jumped
   over the lazy dog. 72
   The quick brown fox jumped
      over the lazy dog. 64
 The quick brown fox jumped over the lazy
                 dog. 48
The quick brown fox jumped over the lazy dog. 42
   The quick brown fox jumped over the lazy dog. 36
          The quick brown fox jumped over the lazy dog. 24
               The quick brown fox jumped over the lazy dog. 18
Helvetica Neue Reg
The quick brown fox jumped
   over the lazy dog. 72
 The quick brown fox jumped
    over the lazy dog. 64
The quick brown fox jumped over the lazy
                dog. 48
The quick brown fox jumped over the lazy dog.
  The quick brown fox jumped over the lazy dog. 36
         The quick brown fox jumped over the lazy dog. 24
              The quick brown fox jumped over the lazy dog. 18
Helvetica Neue Med
    The quick brown fox
 jumped over the lazy dog.
 The quick brown fox jumped
    over the lazy dog. 64
The quick brown fox jumped over the lazy
                dog. 48
The quick brown fox jumped over the lazy dog.
  The quick brown fox jumped over the lazy dog. 36
         The quick brown fox jumped over the lazy dog. 24
              The quick brown fox jumped over the lazy dog. 18
Helvetica Light
The quick brown fox jumped
   over the lazy dog. 72
  The quick brown fox jumped
     over the lazy dog. 64
The quick brown fox jumped over the lazy
                dog. 48
The quick brown fox jumped over the lazy dog.42
   The quick brown fox jumped over the lazy dog. 36
          The quick brown fox jumped over the lazy dog. 24
               The quick brown fox jumped over the lazy dog. 18
Helvetica Neue Light
The quick brown fox jumped
   over the lazy dog. 72
The quick brown fox jumped over
        the lazy dog. 64
 The quick brown fox jumped over the lazy
                dog. 48
The quick brown fox jumped over the lazy dog. 42
   The quick brown fox jumped over the lazy dog. 36
          The quick brown fox jumped over the lazy dog. 24
               The quick brown fox jumped over the lazy dog. 18
Trebuchet MS
The quick brown fox jumped
   over the lazy dog. 72
 The quick brown fox jumped
    over the lazy dog. 64
The quick brown fox jumped over the lazy
                dog. 48
The quick brown fox jumped over the lazy dog.
  The quick brown fox jumped over the lazy dog.36
         The quick brown fox jumped over the lazy dog. 24
               The quick brown fox jumped over the lazy dog. 18
Verdana
 The quick brown fox jumped
    over the lazy dog. 72
The quick brown fox jumped over
         the lazy dog. 64
The quick brown fox jumped over the lazy dog.
 The quick brown fox jumped over the lazy dog. 42
    The quick brown fox jumped over the lazy dog. 36
           The quick brown fox jumped over the lazy dog. 24
                 The quick brown fox jumped over the lazy dog. 18
Monospace
• #The ($quick) {brown fox} jumped over >>
  the /* lazy */ “dog”! && ‘n00b’ || die
  +12345.6789; 0 vs. O vs. o 1 vs. I vs. l
  Andale Mono 30

• #The ($quick) {brown fox} jumped over >>
  the /* lazy */ “dog”! && ‘n00b’ || die
  +12345.6789; 0 vs. O vs. o 1 vs. I vs. l
  Menlo 30

• #The ($quick) {brown fox} jumped over >>
  the /* lazy */ “dog”! && ‘n00b’ || die
  +12345.6789; 0 vs. O vs. o 1 vs. I vs. l
  Monaco 30
•   #The ($quick) {brown fox} jumped over >> the /*
    lazy */ “dog”! && ‘n00b’ || die +12345.6789; 0
    vs. O vs. o 1 vs. I vs. l
    Andale Mono 24

•   #The ($quick) {brown fox} jumped over >> the /*
    lazy */ “dog”! && ‘n00b’ || die +12345.6789; 0
    vs. O vs. o 1 vs. I vs. l
    Menlo 24

•   #The ($quick) {brown fox} jumped over >> the /*
    lazy */ “dog”! && ‘n00b’ || die +12345.6789; 0
    vs. O vs. o 1 vs. I vs. l
    Monaco 24
Andale Mono
• #The   ($quick) {brown fox} jumped over
    >> the /* lazy */ dog! && n00b || die
    +12345.6789;
      0 vs. O vs. o 1 vs. I vs. l (32 pt)

• #The   ($quick) {brown fox} jumped over >>
    the /* lazy */ dog! && n00b || die
    +12345.6789;
      0 vs. O vs. o 1 vs. I vs. l (30 pt)
•   #The ($quick) {brown fox} jumped over >> the /*
    lazy */ dog! && n00b || die +12345.6789;
     0 vs. O vs. o 1 vs. I vs. l (24 pt)
Courier
• #The   ($quick) {brown fox} jumped over
    >> the /* lazy */ dog! && n00b || die
    +12345.6789;
      0 vs. O vs. o 1 vs. I vs. l (32 pt)

• #The   ($quick) {brown fox} jumped over >>
    the /* lazy */ dog! && n00b || die
    +12345.6789; 0 vs. O vs. o 1 vs. I vs. l
    (30 pt)
•   #The ($quick) {brown fox} jumped over >> the /*
    lazy */ dog! && n00b || die +12345.6789;
     0 vs. O vs. o 1 vs. I vs. l (24 pt)
Courier New
• #The   ($quick) {brown fox} jumped over
    >> the /* lazy */ dog! && n00b || die
    +12345.6789;
      0 vs. O vs. o 1 vs. I vs. l (32 pt)

• #The   ($quick) {brown fox} jumped over >>
    the /* lazy */ dog! && n00b || die
    +12345.6789;
      0 vs. O vs. o 1 vs. I vs. l (30 pt)
•   #The ($quick) {brown fox} jumped over >> the /*
    lazy */ dog! && n00b || die +12345.6789;
      0 vs. O vs. o 1 vs. I vs. l (30 pt)
Menlo
• #The   ($quick) {brown fox} jumped over
    >> the /* lazy */ dog! && n00b || die
    +12345.6789;
     0 vs. O vs. o 1 vs. I vs. l (32 pt)

• #The   ($quick) {brown fox} jumped over >>
    the /* lazy */ dog! && n00b || die
    +12345.6789;
      0 vs. O vs. o 1 vs. I vs. l (30 pt)
•   #The ($quick) {brown fox} jumped over >> the /*
    lazy */ dog! && n00b || die +12345.6789;
     0 vs. O vs. o 1 vs. I vs. l (24 pt)
Monaco
• #The   ($quick) {brown fox} jumped over
    >> the /* lazy */ dog! && n00b || die
    +12345.6789;
      0 vs. O vs. o 1 vs. I vs. l (32 pt)

• #The   ($quick) {brown fox} jumped over >>
    the /* lazy */ dog! && n00b || die
    +12345.6789;
      0 vs. O vs. o 1 vs. I vs. l (30 pt)

•   #The ($quick) {brown fox} jumped over >> the /* lazy
    */ dog! && n00b || die +12345.6789;
      0 vs. O vs. o 1 vs. I vs. l (24 pt)
Andale Mono 30
for (lim = nmemb; lim != 0; lim >>= 1) {
     p = base + (lim >> 1) * size;
     cmp = (*compar)(key, p);
     if (cmp == 0)
        return ((void *)p);
     if (cmp > 0) { /* key > p: move right */
        base = (char *)p + size;
        lim--;
     }     /* else move left */
   }
return (NULL);
Courier 30
for (lim = nmemb; lim != 0; lim >>= 1) {
! ! p = base + (lim >> 1) * size;
! ! cmp = (*compar)(key, p);
! ! if (cmp == 0)
! ! ! return ((void *)p);
! ! if (cmp > 0) {! /* key > p: move right */
! ! ! base = (char *)p + size;
! ! ! lim--;
! ! }! ! /* else move left */
! }
return (NULL);
Courier New 30

for (lim = nmemb; lim != 0; lim >>= 1) {
     p = base + (lim >> 1) * size;
     cmp = (*compar)(key, p);
     if (cmp == 0)
        return ((void *)p);
     if (cmp > 0) { /* key > p: move right */
        base = (char *)p + size;
        lim--;
     }     /* else move left */
   }
return (NULL);
Menlo 30
for (lim = nmemb; lim != 0; lim >>= 1) {
! ! p = base + (lim >> 1) * size;
! ! cmp = (*compar)(key, p);
! ! if (cmp == 0)
! ! ! return ((void *)p);
! ! if (cmp > 0) {! /* key > p: move right */
! ! ! base = (char *)p + size;
! ! ! lim--;
! ! }! ! /* else move left */
! }
! return (NULL);
Monaco 30
for (lim = nmemb; lim != 0; lim >>= 1) {
	 	 p = base + (lim >> 1) * size;
	 	 cmp = (*compar)(key, p);
	 	 if (cmp == 0)
	 	 	 return ((void *)p);
	 	 if (cmp > 0) {	 /* key > p: move right */
	 	 	 base = (char *)p + size;
	 	 	 lim--;
	 	 }	 	 /* else move left */
	 }
return (NULL);
Andale Mono 24

for (lim = nmemb; lim != 0; lim >>= 1) {
      p = base + (lim >> 1) * size;
      cmp = (*compar)(key, p);
      if (cmp == 0)
          return ((void *)p);
      if (cmp > 0) { /* key > p: move right */
          base = (char *)p + size;
          lim--;
      }      /* else move left */
   }
return (NULL);
Menlo 24

for (lim = nmemb; lim != 0; lim >>= 1) {
! ! p = base + (lim >> 1) * size;
! ! cmp = (*compar)(key, p);
! ! if (cmp == 0)
! ! ! return ((void *)p);
! ! if (cmp > 0) {! /* key > p: move right */
! ! ! base = (char *)p + size;
! ! ! lim--;
! ! }! ! /* else move left */
! }
! return (NULL);
Monaco 24

for (lim = nmemb; lim != 0; lim >>= 1) {
	 	 p = base + (lim >> 1) * size;
	 	 cmp = (*compar)(key, p);
	 	 if (cmp == 0)
	 	 	 return ((void *)p);
	 	 if (cmp > 0) {	 /* key > p: move right */
	 	 	 base = (char *)p + size;
	 	 	 lim--;
	 	 }	 	 /* else move left */
	 }
return (NULL);
Acknowledgements


• Source code sample is from FreeBSD
  “bsearch.c” http://bit.ly/KDYqwl
• Please see file for copyright notices.

Contenu connexe

Plus de Nick Galbreath

Faster Secure Software Development with Continuous Deployment - PH Days 2013
Faster Secure Software Development with Continuous Deployment - PH Days 2013Faster Secure Software Development with Continuous Deployment - PH Days 2013
Faster Secure Software Development with Continuous Deployment - PH Days 2013Nick Galbreath
 
Fixing security by fixing software development
Fixing security by fixing software developmentFixing security by fixing software development
Fixing security by fixing software developmentNick Galbreath
 
DevOpsDays Austin 2013 Reading List
DevOpsDays Austin 2013 Reading ListDevOpsDays Austin 2013 Reading List
DevOpsDays Austin 2013 Reading ListNick Galbreath
 
Care and Feeding of Large Scale Graphite Installations - DevOpsDays Austin 2013
Care and Feeding of Large Scale Graphite Installations - DevOpsDays Austin 2013Care and Feeding of Large Scale Graphite Installations - DevOpsDays Austin 2013
Care and Feeding of Large Scale Graphite Installations - DevOpsDays Austin 2013Nick Galbreath
 
SQL-RISC: New Directions in SQLi Prevention - RSA USA 2013
SQL-RISC: New Directions in SQLi Prevention - RSA USA 2013SQL-RISC: New Directions in SQLi Prevention - RSA USA 2013
SQL-RISC: New Directions in SQLi Prevention - RSA USA 2013Nick Galbreath
 
Rebooting Software Development - OWASP AppSecUSA
Rebooting Software Development - OWASP AppSecUSA Rebooting Software Development - OWASP AppSecUSA
Rebooting Software Development - OWASP AppSecUSA Nick Galbreath
 
libinjection and sqli obfuscation, presented at OWASP NYC
libinjection and sqli obfuscation, presented at OWASP NYClibinjection and sqli obfuscation, presented at OWASP NYC
libinjection and sqli obfuscation, presented at OWASP NYCNick Galbreath
 
libinjection: new technique in detecting SQLi attacks, iSEC Partners Open Forum
libinjection: new technique in detecting SQLi attacks, iSEC Partners Open Forumlibinjection: new technique in detecting SQLi attacks, iSEC Partners Open Forum
libinjection: new technique in detecting SQLi attacks, iSEC Partners Open ForumNick Galbreath
 
Continuous Deployment - The New #1 Security Feature, from BSildesLA 2012
Continuous Deployment - The New #1 Security Feature, from BSildesLA 2012Continuous Deployment - The New #1 Security Feature, from BSildesLA 2012
Continuous Deployment - The New #1 Security Feature, from BSildesLA 2012Nick Galbreath
 
Time tested php with libtimemachine
Time tested php with libtimemachineTime tested php with libtimemachine
Time tested php with libtimemachineNick Galbreath
 
libinjection: a C library for SQLi detection, from Black Hat USA 2012
libinjection: a C library for SQLi detection, from Black Hat USA 2012libinjection: a C library for SQLi detection, from Black Hat USA 2012
libinjection: a C library for SQLi detection, from Black Hat USA 2012Nick Galbreath
 
New techniques in sql obfuscation, from DEFCON 20
New techniques in sql obfuscation, from DEFCON 20New techniques in sql obfuscation, from DEFCON 20
New techniques in sql obfuscation, from DEFCON 20Nick Galbreath
 
Data Driven Security, from Gartner Security Summit 2012
Data Driven Security, from Gartner Security Summit 2012Data Driven Security, from Gartner Security Summit 2012
Data Driven Security, from Gartner Security Summit 2012Nick Galbreath
 
Slide show font sampler, black on white
Slide show font sampler, black on whiteSlide show font sampler, black on white
Slide show font sampler, black on whiteNick Galbreath
 
Fraud Engineering, from Merchant Risk Council Annual Meeting 2012
Fraud Engineering, from Merchant Risk Council Annual Meeting 2012Fraud Engineering, from Merchant Risk Council Annual Meeting 2012
Fraud Engineering, from Merchant Risk Council Annual Meeting 2012Nick Galbreath
 
Rate Limiting at Scale, from SANS AppSec Las Vegas 2012
Rate Limiting at Scale, from SANS AppSec Las Vegas 2012Rate Limiting at Scale, from SANS AppSec Las Vegas 2012
Rate Limiting at Scale, from SANS AppSec Las Vegas 2012Nick Galbreath
 
DevOpsSec: Appling DevOps Principles to Security, DevOpsDays Austin 2012
DevOpsSec: Appling DevOps Principles to Security, DevOpsDays Austin 2012DevOpsSec: Appling DevOps Principles to Security, DevOpsDays Austin 2012
DevOpsSec: Appling DevOps Principles to Security, DevOpsDays Austin 2012Nick Galbreath
 

Plus de Nick Galbreath (17)

Faster Secure Software Development with Continuous Deployment - PH Days 2013
Faster Secure Software Development with Continuous Deployment - PH Days 2013Faster Secure Software Development with Continuous Deployment - PH Days 2013
Faster Secure Software Development with Continuous Deployment - PH Days 2013
 
Fixing security by fixing software development
Fixing security by fixing software developmentFixing security by fixing software development
Fixing security by fixing software development
 
DevOpsDays Austin 2013 Reading List
DevOpsDays Austin 2013 Reading ListDevOpsDays Austin 2013 Reading List
DevOpsDays Austin 2013 Reading List
 
Care and Feeding of Large Scale Graphite Installations - DevOpsDays Austin 2013
Care and Feeding of Large Scale Graphite Installations - DevOpsDays Austin 2013Care and Feeding of Large Scale Graphite Installations - DevOpsDays Austin 2013
Care and Feeding of Large Scale Graphite Installations - DevOpsDays Austin 2013
 
SQL-RISC: New Directions in SQLi Prevention - RSA USA 2013
SQL-RISC: New Directions in SQLi Prevention - RSA USA 2013SQL-RISC: New Directions in SQLi Prevention - RSA USA 2013
SQL-RISC: New Directions in SQLi Prevention - RSA USA 2013
 
Rebooting Software Development - OWASP AppSecUSA
Rebooting Software Development - OWASP AppSecUSA Rebooting Software Development - OWASP AppSecUSA
Rebooting Software Development - OWASP AppSecUSA
 
libinjection and sqli obfuscation, presented at OWASP NYC
libinjection and sqli obfuscation, presented at OWASP NYClibinjection and sqli obfuscation, presented at OWASP NYC
libinjection and sqli obfuscation, presented at OWASP NYC
 
libinjection: new technique in detecting SQLi attacks, iSEC Partners Open Forum
libinjection: new technique in detecting SQLi attacks, iSEC Partners Open Forumlibinjection: new technique in detecting SQLi attacks, iSEC Partners Open Forum
libinjection: new technique in detecting SQLi attacks, iSEC Partners Open Forum
 
Continuous Deployment - The New #1 Security Feature, from BSildesLA 2012
Continuous Deployment - The New #1 Security Feature, from BSildesLA 2012Continuous Deployment - The New #1 Security Feature, from BSildesLA 2012
Continuous Deployment - The New #1 Security Feature, from BSildesLA 2012
 
Time tested php with libtimemachine
Time tested php with libtimemachineTime tested php with libtimemachine
Time tested php with libtimemachine
 
libinjection: a C library for SQLi detection, from Black Hat USA 2012
libinjection: a C library for SQLi detection, from Black Hat USA 2012libinjection: a C library for SQLi detection, from Black Hat USA 2012
libinjection: a C library for SQLi detection, from Black Hat USA 2012
 
New techniques in sql obfuscation, from DEFCON 20
New techniques in sql obfuscation, from DEFCON 20New techniques in sql obfuscation, from DEFCON 20
New techniques in sql obfuscation, from DEFCON 20
 
Data Driven Security, from Gartner Security Summit 2012
Data Driven Security, from Gartner Security Summit 2012Data Driven Security, from Gartner Security Summit 2012
Data Driven Security, from Gartner Security Summit 2012
 
Slide show font sampler, black on white
Slide show font sampler, black on whiteSlide show font sampler, black on white
Slide show font sampler, black on white
 
Fraud Engineering, from Merchant Risk Council Annual Meeting 2012
Fraud Engineering, from Merchant Risk Council Annual Meeting 2012Fraud Engineering, from Merchant Risk Council Annual Meeting 2012
Fraud Engineering, from Merchant Risk Council Annual Meeting 2012
 
Rate Limiting at Scale, from SANS AppSec Las Vegas 2012
Rate Limiting at Scale, from SANS AppSec Las Vegas 2012Rate Limiting at Scale, from SANS AppSec Las Vegas 2012
Rate Limiting at Scale, from SANS AppSec Las Vegas 2012
 
DevOpsSec: Appling DevOps Principles to Security, DevOpsDays Austin 2012
DevOpsSec: Appling DevOps Principles to Security, DevOpsDays Austin 2012DevOpsSec: Appling DevOps Principles to Security, DevOpsDays Austin 2012
DevOpsSec: Appling DevOps Principles to Security, DevOpsDays Austin 2012
 

Dernier

Escorts Service Nagavara ☎ 7737669865☎ Book Your One night Stand (Bangalore)
Escorts Service Nagavara ☎ 7737669865☎ Book Your One night Stand (Bangalore)Escorts Service Nagavara ☎ 7737669865☎ Book Your One night Stand (Bangalore)
Escorts Service Nagavara ☎ 7737669865☎ Book Your One night Stand (Bangalore)amitlee9823
 
VVIP Pune Call Girls Hadapsar (7001035870) Pune Escorts Nearby with Complete ...
VVIP Pune Call Girls Hadapsar (7001035870) Pune Escorts Nearby with Complete ...VVIP Pune Call Girls Hadapsar (7001035870) Pune Escorts Nearby with Complete ...
VVIP Pune Call Girls Hadapsar (7001035870) Pune Escorts Nearby with Complete ...Call Girls in Nagpur High Profile
 
Call Girls in Kalkaji Delhi 8264348440 call girls ❤️
Call Girls in Kalkaji Delhi 8264348440 call girls ❤️Call Girls in Kalkaji Delhi 8264348440 call girls ❤️
Call Girls in Kalkaji Delhi 8264348440 call girls ❤️soniya singh
 
Stark Industries Marketing Plan (1).pptx
Stark Industries Marketing Plan (1).pptxStark Industries Marketing Plan (1).pptx
Stark Industries Marketing Plan (1).pptxjeswinjees
 
Editorial design Magazine design project.pdf
Editorial design Magazine design project.pdfEditorial design Magazine design project.pdf
Editorial design Magazine design project.pdftbatkhuu1
 
Kala jadu for love marriage | Real amil baba | Famous amil baba | kala jadu n...
Kala jadu for love marriage | Real amil baba | Famous amil baba | kala jadu n...Kala jadu for love marriage | Real amil baba | Famous amil baba | kala jadu n...
Kala jadu for love marriage | Real amil baba | Famous amil baba | kala jadu n...babafaisel
 
VVIP CALL GIRLS Lucknow 💓 Lucknow < Renuka Sharma > 7877925207 Escorts Service
VVIP CALL GIRLS Lucknow 💓 Lucknow < Renuka Sharma > 7877925207 Escorts ServiceVVIP CALL GIRLS Lucknow 💓 Lucknow < Renuka Sharma > 7877925207 Escorts Service
VVIP CALL GIRLS Lucknow 💓 Lucknow < Renuka Sharma > 7877925207 Escorts Servicearoranaina404
 
SD_The MATATAG Curriculum Training Design.pptx
SD_The MATATAG Curriculum Training Design.pptxSD_The MATATAG Curriculum Training Design.pptx
SD_The MATATAG Curriculum Training Design.pptxjanettecruzeiro1
 
Peaches App development presentation deck
Peaches App development presentation deckPeaches App development presentation deck
Peaches App development presentation decktbatkhuu1
 
CBD Belapur Individual Call Girls In 08976425520 Panvel Only Genuine Call Girls
CBD Belapur Individual Call Girls In 08976425520 Panvel Only Genuine Call GirlsCBD Belapur Individual Call Girls In 08976425520 Panvel Only Genuine Call Girls
CBD Belapur Individual Call Girls In 08976425520 Panvel Only Genuine Call Girlsmodelanjalisharma4
 
AMBER GRAIN EMBROIDERY | Growing folklore elements | Root-based materials, w...
AMBER GRAIN EMBROIDERY | Growing folklore elements |  Root-based materials, w...AMBER GRAIN EMBROIDERY | Growing folklore elements |  Root-based materials, w...
AMBER GRAIN EMBROIDERY | Growing folklore elements | Root-based materials, w...BarusRa
 
The Art of Batik, template ppt aesthetic
The Art of Batik, template ppt aestheticThe Art of Batik, template ppt aesthetic
The Art of Batik, template ppt aestheticTiaFebriani
 
The_Canvas_of_Creative_Mastery_Newsletter_April_2024_Version.pdf
The_Canvas_of_Creative_Mastery_Newsletter_April_2024_Version.pdfThe_Canvas_of_Creative_Mastery_Newsletter_April_2024_Version.pdf
The_Canvas_of_Creative_Mastery_Newsletter_April_2024_Version.pdfAmirYakdi
 
Verified Trusted Call Girls Adugodi💘 9352852248 Good Looking standard Profil...
Verified Trusted Call Girls Adugodi💘 9352852248  Good Looking standard Profil...Verified Trusted Call Girls Adugodi💘 9352852248  Good Looking standard Profil...
Verified Trusted Call Girls Adugodi💘 9352852248 Good Looking standard Profil...kumaririma588
 
Pooja 9892124323, Call girls Services and Mumbai Escort Service Near Hotel Hy...
Pooja 9892124323, Call girls Services and Mumbai Escort Service Near Hotel Hy...Pooja 9892124323, Call girls Services and Mumbai Escort Service Near Hotel Hy...
Pooja 9892124323, Call girls Services and Mumbai Escort Service Near Hotel Hy...Pooja Nehwal
 
CALL ON ➥8923113531 🔝Call Girls Aminabad Lucknow best Night Fun service
CALL ON ➥8923113531 🔝Call Girls Aminabad Lucknow best Night Fun serviceCALL ON ➥8923113531 🔝Call Girls Aminabad Lucknow best Night Fun service
CALL ON ➥8923113531 🔝Call Girls Aminabad Lucknow best Night Fun serviceanilsa9823
 
Best VIP Call Girls Noida Sector 44 Call Me: 8448380779
Best VIP Call Girls Noida Sector 44 Call Me: 8448380779Best VIP Call Girls Noida Sector 44 Call Me: 8448380779
Best VIP Call Girls Noida Sector 44 Call Me: 8448380779Delhi Call girls
 
VIP Call Girls Service Kukatpally Hyderabad Call +91-8250192130
VIP Call Girls Service Kukatpally Hyderabad Call +91-8250192130VIP Call Girls Service Kukatpally Hyderabad Call +91-8250192130
VIP Call Girls Service Kukatpally Hyderabad Call +91-8250192130Suhani Kapoor
 

Dernier (20)

Escorts Service Nagavara ☎ 7737669865☎ Book Your One night Stand (Bangalore)
Escorts Service Nagavara ☎ 7737669865☎ Book Your One night Stand (Bangalore)Escorts Service Nagavara ☎ 7737669865☎ Book Your One night Stand (Bangalore)
Escorts Service Nagavara ☎ 7737669865☎ Book Your One night Stand (Bangalore)
 
young call girls in Pandav nagar 🔝 9953056974 🔝 Delhi escort Service
young call girls in Pandav nagar 🔝 9953056974 🔝 Delhi escort Serviceyoung call girls in Pandav nagar 🔝 9953056974 🔝 Delhi escort Service
young call girls in Pandav nagar 🔝 9953056974 🔝 Delhi escort Service
 
VVIP Pune Call Girls Hadapsar (7001035870) Pune Escorts Nearby with Complete ...
VVIP Pune Call Girls Hadapsar (7001035870) Pune Escorts Nearby with Complete ...VVIP Pune Call Girls Hadapsar (7001035870) Pune Escorts Nearby with Complete ...
VVIP Pune Call Girls Hadapsar (7001035870) Pune Escorts Nearby with Complete ...
 
B. Smith. (Architectural Portfolio.).pdf
B. Smith. (Architectural Portfolio.).pdfB. Smith. (Architectural Portfolio.).pdf
B. Smith. (Architectural Portfolio.).pdf
 
Call Girls in Kalkaji Delhi 8264348440 call girls ❤️
Call Girls in Kalkaji Delhi 8264348440 call girls ❤️Call Girls in Kalkaji Delhi 8264348440 call girls ❤️
Call Girls in Kalkaji Delhi 8264348440 call girls ❤️
 
Stark Industries Marketing Plan (1).pptx
Stark Industries Marketing Plan (1).pptxStark Industries Marketing Plan (1).pptx
Stark Industries Marketing Plan (1).pptx
 
Editorial design Magazine design project.pdf
Editorial design Magazine design project.pdfEditorial design Magazine design project.pdf
Editorial design Magazine design project.pdf
 
Kala jadu for love marriage | Real amil baba | Famous amil baba | kala jadu n...
Kala jadu for love marriage | Real amil baba | Famous amil baba | kala jadu n...Kala jadu for love marriage | Real amil baba | Famous amil baba | kala jadu n...
Kala jadu for love marriage | Real amil baba | Famous amil baba | kala jadu n...
 
VVIP CALL GIRLS Lucknow 💓 Lucknow < Renuka Sharma > 7877925207 Escorts Service
VVIP CALL GIRLS Lucknow 💓 Lucknow < Renuka Sharma > 7877925207 Escorts ServiceVVIP CALL GIRLS Lucknow 💓 Lucknow < Renuka Sharma > 7877925207 Escorts Service
VVIP CALL GIRLS Lucknow 💓 Lucknow < Renuka Sharma > 7877925207 Escorts Service
 
SD_The MATATAG Curriculum Training Design.pptx
SD_The MATATAG Curriculum Training Design.pptxSD_The MATATAG Curriculum Training Design.pptx
SD_The MATATAG Curriculum Training Design.pptx
 
Peaches App development presentation deck
Peaches App development presentation deckPeaches App development presentation deck
Peaches App development presentation deck
 
CBD Belapur Individual Call Girls In 08976425520 Panvel Only Genuine Call Girls
CBD Belapur Individual Call Girls In 08976425520 Panvel Only Genuine Call GirlsCBD Belapur Individual Call Girls In 08976425520 Panvel Only Genuine Call Girls
CBD Belapur Individual Call Girls In 08976425520 Panvel Only Genuine Call Girls
 
AMBER GRAIN EMBROIDERY | Growing folklore elements | Root-based materials, w...
AMBER GRAIN EMBROIDERY | Growing folklore elements |  Root-based materials, w...AMBER GRAIN EMBROIDERY | Growing folklore elements |  Root-based materials, w...
AMBER GRAIN EMBROIDERY | Growing folklore elements | Root-based materials, w...
 
The Art of Batik, template ppt aesthetic
The Art of Batik, template ppt aestheticThe Art of Batik, template ppt aesthetic
The Art of Batik, template ppt aesthetic
 
The_Canvas_of_Creative_Mastery_Newsletter_April_2024_Version.pdf
The_Canvas_of_Creative_Mastery_Newsletter_April_2024_Version.pdfThe_Canvas_of_Creative_Mastery_Newsletter_April_2024_Version.pdf
The_Canvas_of_Creative_Mastery_Newsletter_April_2024_Version.pdf
 
Verified Trusted Call Girls Adugodi💘 9352852248 Good Looking standard Profil...
Verified Trusted Call Girls Adugodi💘 9352852248  Good Looking standard Profil...Verified Trusted Call Girls Adugodi💘 9352852248  Good Looking standard Profil...
Verified Trusted Call Girls Adugodi💘 9352852248 Good Looking standard Profil...
 
Pooja 9892124323, Call girls Services and Mumbai Escort Service Near Hotel Hy...
Pooja 9892124323, Call girls Services and Mumbai Escort Service Near Hotel Hy...Pooja 9892124323, Call girls Services and Mumbai Escort Service Near Hotel Hy...
Pooja 9892124323, Call girls Services and Mumbai Escort Service Near Hotel Hy...
 
CALL ON ➥8923113531 🔝Call Girls Aminabad Lucknow best Night Fun service
CALL ON ➥8923113531 🔝Call Girls Aminabad Lucknow best Night Fun serviceCALL ON ➥8923113531 🔝Call Girls Aminabad Lucknow best Night Fun service
CALL ON ➥8923113531 🔝Call Girls Aminabad Lucknow best Night Fun service
 
Best VIP Call Girls Noida Sector 44 Call Me: 8448380779
Best VIP Call Girls Noida Sector 44 Call Me: 8448380779Best VIP Call Girls Noida Sector 44 Call Me: 8448380779
Best VIP Call Girls Noida Sector 44 Call Me: 8448380779
 
VIP Call Girls Service Kukatpally Hyderabad Call +91-8250192130
VIP Call Girls Service Kukatpally Hyderabad Call +91-8250192130VIP Call Girls Service Kukatpally Hyderabad Call +91-8250192130
VIP Call Girls Service Kukatpally Hyderabad Call +91-8250192130
 

Slide show font sampler, white on black

  • 1. Slide Show Font Sampler White on Black Edition, v2012-05-28 How well do fonts convert online? How good do they look on washed up projectors? How big is too big? How small is too small? Nick Galbreath nickg@client9.com @ngalbreath
  • 2. Original Sources and Alternative Versions This presentation is available on multiple online slide-sharing services and comes in both black-text on white-background and white-on-black versions. http://goo.gl/Pwxoc blog.client9.com/2012/05/
  • 3. Problems • How good is the font conversion when a presentation is posted online? • How good to fonts look on washed out projectors? From how far away? • For plain text? For computer code?
  • 4. Solutions • This deck contains the most popular sans- serif fonts in 18, 24, 36, 42, 48, 64 and if room, 72 point-size. • Then common monospace fonts at 24, 30, 32 points along with some computer code at 32 points. • This was created with Keynote 5.1.1 using a slide size of 1024x768 on Mac OS X 10.7.4 and uploaded to various services.
  • 5. • The quick brown fox jumped over the lazy dog. Arial 42. •The quick brown fox jumped over the lazy dog. Futura 42. • The quick brown fox jumped over the lazy dog. Gill Sans 42. • The quick brown fox jumped over the lazy dog. Helvetica 42. • The quick brown fox jumped over the lazy dog. Helvetica Neue 42. • The quick brown fox jumped over the lazy dog. Helvetica Neue Medium 42.
  • 6. • The quick brown fox jumped over the lazy dog. Helvetica Neue 42. • The quick brown fox jumped over the lazy dog. Trebuchet MS 42. • The quick brown fox jumped over the lazy dog. Verdana 42. • The quick brown fox jumped over the lazy dog. Helvetica Light 42 • The quick brown fox jumped over the lazy dog. Helvetica Neue Light 42
  • 7. The quick brown fox jumped over the lazy dog. Arial 36. •The quick brown fox jumped over the lazy dog. Futura 36. • The quick brown fox jumped over the lazy dog. Gill Sans 36. • The quick brown fox jumped over the lazy dog. Helvetica 36. • The quick brown fox jumped over the lazy dog. Helvetica Neue 36. • The quick brown fox jumped over the lazy dog. Helvetica Neue Medium 36.
  • 8. • The quick brown fox jumped over the lazy dog. Helvetica Neue 36. • The quick brown fox jumped over the lazy dog. Trebuchet MS 36. • The quick brown fox jumped over the lazy dog. Verdana 36. • The quick brown fox jumped over the lazy dog. Helvetica Light 36 • The quick brown fox jumped over the lazy dog. Helvetica Neue Light 36 • The quick brown fox jumped over the lazy dog. Helvetica Neue Light 36
  • 9. The quick brown fox jumped over the lazy dog. Arial 30. • The quick brown fox jumped over the lazy dog. Futura 30. • The quick brown fox jumped over the lazy dog. Gill Sans 30. • The quick brown fox jumped over the lazy dog. Helvetica 30. • The quick brown fox jumped over the lazy dog. Helvetica Neue 30. • The quick brown fox jumped over the lazy dog. Helvetica Neue Medium 30.
  • 10. The quick brown fox jumped over the lazy dog. Helvetica Neue 30. • The quick brown fox jumped over the lazy dog. Trebuchet MS 30. • The quick brown fox jumped over the lazy dog. Verdana 30. • The quick brown fox jumped over the lazy dog. Helvetica Light 30 • The quick brown fox jumped over the lazy dog. Helvetica Neue Light 30
  • 11. Arial The quick brown fox jumped over the lazy dog. 72 The quick brown fox jumped over the lazy dog. 64 The quick brown fox jumped over the lazy dog. 48 The quick brown fox jumped over the lazy dog. 42 The quick brown fox jumped over the lazy dog. 36 The quick brown fox jumped over the lazy dog. 24 The quick brown fox jumped over the lazy dog. 18
  • 12. Futura Medium The quick brown fox jumped over the lazy dog. 64 The quick brown fox jumped over the lazy dog. 48 The quick brown fox jumped over the lazy dog. The quick brown fox jumped over the lazy dog. 36 The quick brown fox jumped over the lazy dog. 24 The quick brown fox jumped over the lazy dog.18
  • 13. Gill Sans Regular The quick brown fox jumped over the lazy dog. 72 The quick brown fox jumped over the lazy dog. 64 The quick brown fox jumped over the lazy dog. The quick brown fox jumped over the lazy dog. 42 The quick brown fox jumped over the lazy dog. 36 The quick brown fox jumped over the lazy dog. 24 The quick brown fox jumped over the lazy dog. 18
  • 14. Helvetica Regular The quick brown fox jumped over the lazy dog. 72 The quick brown fox jumped over the lazy dog. 64 The quick brown fox jumped over the lazy dog. 48 The quick brown fox jumped over the lazy dog. 42 The quick brown fox jumped over the lazy dog. 36 The quick brown fox jumped over the lazy dog. 24 The quick brown fox jumped over the lazy dog. 18
  • 15. Helvetica Neue Reg The quick brown fox jumped over the lazy dog. 72 The quick brown fox jumped over the lazy dog. 64 The quick brown fox jumped over the lazy dog. 48 The quick brown fox jumped over the lazy dog. The quick brown fox jumped over the lazy dog. 36 The quick brown fox jumped over the lazy dog. 24 The quick brown fox jumped over the lazy dog. 18
  • 16. Helvetica Neue Med The quick brown fox jumped over the lazy dog. The quick brown fox jumped over the lazy dog. 64 The quick brown fox jumped over the lazy dog. 48 The quick brown fox jumped over the lazy dog. The quick brown fox jumped over the lazy dog. 36 The quick brown fox jumped over the lazy dog. 24 The quick brown fox jumped over the lazy dog. 18
  • 17. Helvetica Light The quick brown fox jumped over the lazy dog. 72 The quick brown fox jumped over the lazy dog. 64 The quick brown fox jumped over the lazy dog. 48 The quick brown fox jumped over the lazy dog.42 The quick brown fox jumped over the lazy dog. 36 The quick brown fox jumped over the lazy dog. 24 The quick brown fox jumped over the lazy dog. 18
  • 18. Helvetica Neue Light The quick brown fox jumped over the lazy dog. 72 The quick brown fox jumped over the lazy dog. 64 The quick brown fox jumped over the lazy dog. 48 The quick brown fox jumped over the lazy dog. 42 The quick brown fox jumped over the lazy dog. 36 The quick brown fox jumped over the lazy dog. 24 The quick brown fox jumped over the lazy dog. 18
  • 19. Trebuchet MS The quick brown fox jumped over the lazy dog. 72 The quick brown fox jumped over the lazy dog. 64 The quick brown fox jumped over the lazy dog. 48 The quick brown fox jumped over the lazy dog. The quick brown fox jumped over the lazy dog.36 The quick brown fox jumped over the lazy dog. 24 The quick brown fox jumped over the lazy dog. 18
  • 20. Verdana The quick brown fox jumped over the lazy dog. 72 The quick brown fox jumped over the lazy dog. 64 The quick brown fox jumped over the lazy dog. The quick brown fox jumped over the lazy dog. 42 The quick brown fox jumped over the lazy dog. 36 The quick brown fox jumped over the lazy dog. 24 The quick brown fox jumped over the lazy dog. 18
  • 22. • #The ($quick) {brown fox} jumped over >> the /* lazy */ “dog”! && ‘n00b’ || die +12345.6789; 0 vs. O vs. o 1 vs. I vs. l Andale Mono 30 • #The ($quick) {brown fox} jumped over >> the /* lazy */ “dog”! && ‘n00b’ || die +12345.6789; 0 vs. O vs. o 1 vs. I vs. l Menlo 30 • #The ($quick) {brown fox} jumped over >> the /* lazy */ “dog”! && ‘n00b’ || die +12345.6789; 0 vs. O vs. o 1 vs. I vs. l Monaco 30
  • 23. #The ($quick) {brown fox} jumped over >> the /* lazy */ “dog”! && ‘n00b’ || die +12345.6789; 0 vs. O vs. o 1 vs. I vs. l Andale Mono 24 • #The ($quick) {brown fox} jumped over >> the /* lazy */ “dog”! && ‘n00b’ || die +12345.6789; 0 vs. O vs. o 1 vs. I vs. l Menlo 24 • #The ($quick) {brown fox} jumped over >> the /* lazy */ “dog”! && ‘n00b’ || die +12345.6789; 0 vs. O vs. o 1 vs. I vs. l Monaco 24
  • 24. Andale Mono • #The ($quick) {brown fox} jumped over >> the /* lazy */ dog! && n00b || die +12345.6789; 0 vs. O vs. o 1 vs. I vs. l (32 pt) • #The ($quick) {brown fox} jumped over >> the /* lazy */ dog! && n00b || die +12345.6789; 0 vs. O vs. o 1 vs. I vs. l (30 pt) • #The ($quick) {brown fox} jumped over >> the /* lazy */ dog! && n00b || die +12345.6789; 0 vs. O vs. o 1 vs. I vs. l (24 pt)
  • 25. Courier • #The ($quick) {brown fox} jumped over >> the /* lazy */ dog! && n00b || die +12345.6789; 0 vs. O vs. o 1 vs. I vs. l (32 pt) • #The ($quick) {brown fox} jumped over >> the /* lazy */ dog! && n00b || die +12345.6789; 0 vs. O vs. o 1 vs. I vs. l (30 pt) • #The ($quick) {brown fox} jumped over >> the /* lazy */ dog! && n00b || die +12345.6789; 0 vs. O vs. o 1 vs. I vs. l (24 pt)
  • 26. Courier New • #The ($quick) {brown fox} jumped over >> the /* lazy */ dog! && n00b || die +12345.6789; 0 vs. O vs. o 1 vs. I vs. l (32 pt) • #The ($quick) {brown fox} jumped over >> the /* lazy */ dog! && n00b || die +12345.6789; 0 vs. O vs. o 1 vs. I vs. l (30 pt) • #The ($quick) {brown fox} jumped over >> the /* lazy */ dog! && n00b || die +12345.6789; 0 vs. O vs. o 1 vs. I vs. l (30 pt)
  • 27. Menlo • #The ($quick) {brown fox} jumped over >> the /* lazy */ dog! && n00b || die +12345.6789; 0 vs. O vs. o 1 vs. I vs. l (32 pt) • #The ($quick) {brown fox} jumped over >> the /* lazy */ dog! && n00b || die +12345.6789; 0 vs. O vs. o 1 vs. I vs. l (30 pt) • #The ($quick) {brown fox} jumped over >> the /* lazy */ dog! && n00b || die +12345.6789; 0 vs. O vs. o 1 vs. I vs. l (24 pt)
  • 28. Monaco • #The ($quick) {brown fox} jumped over >> the /* lazy */ dog! && n00b || die +12345.6789; 0 vs. O vs. o 1 vs. I vs. l (32 pt) • #The ($quick) {brown fox} jumped over >> the /* lazy */ dog! && n00b || die +12345.6789; 0 vs. O vs. o 1 vs. I vs. l (30 pt) • #The ($quick) {brown fox} jumped over >> the /* lazy */ dog! && n00b || die +12345.6789; 0 vs. O vs. o 1 vs. I vs. l (24 pt)
  • 29. Andale Mono 30 for (lim = nmemb; lim != 0; lim >>= 1) { p = base + (lim >> 1) * size; cmp = (*compar)(key, p); if (cmp == 0) return ((void *)p); if (cmp > 0) { /* key > p: move right */ base = (char *)p + size; lim--; } /* else move left */ } return (NULL);
  • 30. Courier 30 for (lim = nmemb; lim != 0; lim >>= 1) { ! ! p = base + (lim >> 1) * size; ! ! cmp = (*compar)(key, p); ! ! if (cmp == 0) ! ! ! return ((void *)p); ! ! if (cmp > 0) {! /* key > p: move right */ ! ! ! base = (char *)p + size; ! ! ! lim--; ! ! }! ! /* else move left */ ! } return (NULL);
  • 31. Courier New 30 for (lim = nmemb; lim != 0; lim >>= 1) { p = base + (lim >> 1) * size; cmp = (*compar)(key, p); if (cmp == 0) return ((void *)p); if (cmp > 0) { /* key > p: move right */ base = (char *)p + size; lim--; } /* else move left */ } return (NULL);
  • 32. Menlo 30 for (lim = nmemb; lim != 0; lim >>= 1) { ! ! p = base + (lim >> 1) * size; ! ! cmp = (*compar)(key, p); ! ! if (cmp == 0) ! ! ! return ((void *)p); ! ! if (cmp > 0) {! /* key > p: move right */ ! ! ! base = (char *)p + size; ! ! ! lim--; ! ! }! ! /* else move left */ ! } ! return (NULL);
  • 33. Monaco 30 for (lim = nmemb; lim != 0; lim >>= 1) { p = base + (lim >> 1) * size; cmp = (*compar)(key, p); if (cmp == 0) return ((void *)p); if (cmp > 0) { /* key > p: move right */ base = (char *)p + size; lim--; } /* else move left */ } return (NULL);
  • 34. Andale Mono 24 for (lim = nmemb; lim != 0; lim >>= 1) { p = base + (lim >> 1) * size; cmp = (*compar)(key, p); if (cmp == 0) return ((void *)p); if (cmp > 0) { /* key > p: move right */ base = (char *)p + size; lim--; } /* else move left */ } return (NULL);
  • 35. Menlo 24 for (lim = nmemb; lim != 0; lim >>= 1) { ! ! p = base + (lim >> 1) * size; ! ! cmp = (*compar)(key, p); ! ! if (cmp == 0) ! ! ! return ((void *)p); ! ! if (cmp > 0) {! /* key > p: move right */ ! ! ! base = (char *)p + size; ! ! ! lim--; ! ! }! ! /* else move left */ ! } ! return (NULL);
  • 36. Monaco 24 for (lim = nmemb; lim != 0; lim >>= 1) { p = base + (lim >> 1) * size; cmp = (*compar)(key, p); if (cmp == 0) return ((void *)p); if (cmp > 0) { /* key > p: move right */ base = (char *)p + size; lim--; } /* else move left */ } return (NULL);
  • 37. Acknowledgements • Source code sample is from FreeBSD “bsearch.c” http://bit.ly/KDYqwl • Please see file for copyright notices.

Notes de l'éditeur

  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. \n
  22. \n
  23. \n
  24. \n
  25. \n
  26. \n
  27. \n
  28. \n
  29. \n
  30. \n
  31. \n
  32. \n
  33. \n
  34. \n
  35. \n
  36. \n
  37. \n