Slide 1

Slide 1 text

TYPE IS BEAUTIFUL Ark Typography @ mockee

Slide 2

Slide 2 text

TYPE RENDERING

Slide 3

Slide 3 text

a designer cannot ensure that users will see HTML text exactly as designed.

Slide 4

Slide 4 text

Chrome for Mac OS X

Slide 5

Slide 5 text

IE 9 for Windows 7

Slide 6

Slide 6 text

IE 6 for Windows XP

Slide 7

Slide 7 text

No content

Slide 8

Slide 8 text

Apple and Microsoft have always disagreed in how to display fonts on computer displays.

Slide 9

Slide 9 text

the goal of the algorithm should be to preserve the design of the typeface as much as possible, even at the cost of a little bit of blurriness. the shape of each letter should be hammered into pixel boundaries to prevent blur and improve readability, even at the cost of not being true to the typeface.

Slide 10

Slide 10 text

RENDERING STRATEGIES - Black and White (bi-level) - Grayscale (antialiasing , resampled for image) - Sub-pixel (colored pixels, LCD)

Slide 11

Slide 11 text

RASTERIZATION ideal shape black & white grayscale sub-pixel

Slide 12

Slide 12 text

CURRENT IMPLEMENTATIONS Windows Mac OS X iOS iOS GDI-Grayscale GDI-ClearType (ClearType applies only to TrueType-based web fonts) DirectWrite Core Text (with Quartz) Core Text (with Quartz) Core Text (with Quartz) GDI-Grayscale GDI-ClearType (ClearType applies only to TrueType-based web fonts) DirectWrite Sub-pixel (opaque background , normal orientation) also for Retina displays Sub-pixel (opaque background , normal orientation) also for Retina displays Grayscale sub-pixel (disabled by default) Fonts Hinting Sub-pixel (opaque background , normal orientation) also for Retina displays Sub-pixel (opaque background , normal orientation) also for Retina displays Grayscale sub-pixel (disabled by default)

Slide 13

Slide 13 text

Mac OS X and iOS Generally very reliable Windows Font format is important Hinting matters

Slide 14

Slide 14 text

CONCLUSIONS - Accept the reality - Assume the worst - Use web fonts - Beware of big type - Wait for a future Font smoothing explained - szafranek.net

Slide 15

Slide 15 text

SIDE STORY ICONIC FONTS http://dou.bz/234nZ2

Slide 16

Slide 16 text

No content

Slide 17

Slide 17 text

https://github.com/blog/1135-the-making-of-octicons

Slide 18

Slide 18 text

CSS TEXT

Slide 19

Slide 19 text

READING FONT-FAMILY

Slide 20

Slide 20 text

ޑุ 楷体

Slide 21

Slide 21 text

$KaiFont = STKaiti $HeiFont = STHeiti

Slide 22

Slide 22 text

$HeiFont = "Hiragino Sans GB", STHeiti, "Microsoft YaHei", "Wenquanyi Micro Hei", "WenQuanYi Micro Hei Mono", "WenQuanYi Zen Hei", "WenQuanYi Zen Hei Mono", LiGothicMed, SimHei $KaiFont = STKaiti, "AR PL UKai", "AR PL KaitiM GB", KaiTi, KaiTi_GB2312, "TW-Kai" http://dou.bz/1i5IKs

Slide 23

Slide 23 text

SPACING The space bar is not a design tool. ELLEN LUPTON, THINKING WITH TYPE Between ideographic and non-ideographic text. - an en space (plain text) - 1/4 of an em space (InDesign) - auto space (CSS) - necessary ?

Slide 24

Slide 24 text

-ms-text-autospace none ideograph-alpha ideograph-numeric ideograph-parenthesis ideograph-space CSS Text Level 3, Section 9.4 text-spacing CSS Text Level 4, Section 8.3 normal | none | [ trim-start | space-start ] [ trim-end | space-end | allow-end ] [ trim-adjacent | space-adjacent ] ideograph-alpha | ideograph-numeric no-compress | punctuation

Slide 25

Slide 25 text

JUSTIFICATION

Slide 26

Slide 26 text

text-align: justify text-justify: inter-ideograph http://www.w3.org/TR/css3-text/#text-justify IE Chrome Safari Firefox Opera √ Mac OS / iOS (inter-ideograph only) Mac OS / iOS (inter-ideograph only) Mac OS / iOS (inter-ideograph only) * inter-word justify √ Windows (inter-word) Windows (inter-word) inter-ideograph only * inter-word justify inter-word | distribute http://codepen.io/mockee/pen/suGbI

Slide 27

Slide 27 text

LINE BREAKING

Slide 28

Slide 28 text

PUNCTUATION PROHIBITIONS Simplified Chinese (Ark Version, like webkit) Characters that are not allowed at the start of a line : !%),.:;?]}¢°’”‟›℃∶ɺɻʭʥ㽆〞﹚﹜ʂˋʣɼɽɿʀʁʧʩ not allowed at the end of a line : $(£¥﹙﹛ʬʪʮʰʤ㽅ᶸˈʢɽʦʨˊˇ http://en.wikipedia.org/wiki/Line_breaking_rules_in_East_Asian_languages not allowed at both ends of a line : “'‘ can't be separated: —…‥ https://github.com/mathiasbynens/unicode-data

Slide 29

Slide 29 text

ISSUEs of line breaking strategy for Chinese on Chrome and Safari Wrapped with a span tag for each word, line break strategy becomes ineffective. word-break: break-all ⊗ ⇢ PROHIBITIONS ⊗ wrap word & punctuations ⾫ ⇣ new line breaking bug display: inline-block | run-in ⊗ √

Slide 30

Slide 30 text

Web Designer ? Typographer ? Front End Engineer !

Slide 31

Slide 31 text

Thx:) douban.com/people/mockee ILLUSTRATION CREDITS: ALISTAPART