diff options
| author | Dan Allen <dan.j.allen@gmail.com> | 2014-04-18 22:52:50 -0600 |
|---|---|---|
| committer | Dan Allen <dan.j.allen@gmail.com> | 2014-04-18 22:52:50 -0600 |
| commit | 36057b5cb430db0d1f23557f848de1ca7b812644 (patch) | |
| tree | 56fb09962f4b7a7768c912ec0fe8c8c20452adef /scripts | |
| parent | 27a8559730b71d35eeb8d71d03783d37dd7fadda (diff) | |
font improvements
- regenerate Noto Serif fonts from upstream
- add script to generate optimized subset of Noto Serif fonts
- enable kerning in a standard way except on Kindle
- fix link color in abstract in WebKit
- prevent iBooks from hyphenating the chapter title
- update WORKLOG
Diffstat (limited to 'scripts')
| -rw-r--r-- | scripts/optimize-noto-serif-fonts.pe | 211 |
1 files changed, 211 insertions, 0 deletions
diff --git a/scripts/optimize-noto-serif-fonts.pe b/scripts/optimize-noto-serif-fonts.pe new file mode 100644 index 0000000..557b96f --- /dev/null +++ b/scripts/optimize-noto-serif-fonts.pe @@ -0,0 +1,211 @@ +# Run using: +# $ fontforge -script optimize-noto-serif-fonts.pe +# Run against fonts from https://code.google.com/p/noto/source/browse/#svn%2Ftrunk%2Ffonts%2Findividual%2Funhinted +# IMPORTANT: Must generate Apple format (0x10) or include old-fashioned 'kern' table for kerning to work in Prawn +# generate flags (additive): +# * 0x00 - OpenType +# * 0x10 - Apple +# * 0x80 - OpenType and Apple +# * 0x90 - Neither OpenType or Apple +# * 0x800 - Generate old-style 'kern' table +# * 0x08 - exclude TrueType instructions +# NotoSerif Regular +Open("NotoSerif-Regular.ttf") +SelectAll() +ClearInstrs() +#Simplify() +#RoundToInt() +SelectNone() +# Basic Latin +SelectMore(0u0020,0u007e) +# Latin-1 Supplement +SelectMore(0u00a0,0u00ff) +# Mathematical Operators +SelectMore(0u2200,0u22ff) +# General Punctuation (most) +SelectMore(0u2000,0u203a) +# Trademark sign +SelectMore(0u2122) +# Geometric Shapes +SelectMore(0u25a0,0u25ff) +# Latin Extended-A, Latin Extended-B +SelectMore(0u0100,0u024f) +# IPA Extensions +#SelectMore(0u0250,0u02af) +# Upside-down e +SelectMore(0u0259) +# Spacing Modifier Letters +SelectMore(0u02b0,0u02ff) +# Greek +SelectMore(0u0370,0u03ff) +# Greek Extended +#SelectMore(0u1f00,0u1fff) +# Cyrillic +SelectMore(0u0400,0u04ff) +# Cyrillic Supplement +#SelectMore(0u0500,0u052f) +# Latin Extended Additional +SelectMore(0u1e00,0u1eff) +# Currency Symbols +SelectMore(0u20a0,0u20d0) +# Latin Ligatures +#SelectMore(0ufb00,0ufb06) +# BOM +SelectMore(0ufeff) +# Non-marking return +SelectMore(0u000d) +SelectInvert() +Clear() +SelectNone() +Generate("noto-serif-regular.ttf", "", 0x08) +Close() +# NotoSerif Bold +Open("NotoSerif-Bold.ttf") +SelectAll() +ClearInstrs() +#Simplify() +#RoundToInt() +SelectNone() +# Basic Latin +SelectMore(0u0020,0u007e) +# Latin-1 Supplement +SelectMore(0u00a0,0u00ff) +# Mathematical Operators +SelectMore(0u2200,0u22ff) +# General Punctuation (most) +SelectMore(0u2000,0u203a) +# Trademark sign +SelectMore(0u2122) +# Geometric Shapes +SelectMore(0u25a0,0u25ff) +# Latin Extended-A, Latin Extended-B +SelectMore(0u0100,0u024f) +# IPA Extensions +#SelectMore(0u0250,0u02af) +# Upside-down e +SelectMore(0u0259) +# Spacing Modifier Letters +SelectMore(0u02b0,0u02ff) +# Greek +SelectMore(0u0370,0u03ff) +# Greek Extended +#SelectMore(0u1f00,0u1fff) +# Cyrillic +SelectMore(0u0400,0u04ff) +# Cyrillic Supplement +#SelectMore(0u0500,0u052f) +# Latin Extended Additional +SelectMore(0u1e00,0u1eff) +# Currency Symbols +SelectMore(0u20a0,0u20d0) +# Latin Ligatures +#SelectMore(0ufb00,0ufb06) +# BOM +SelectMore(0ufeff) +# Non-marking return +SelectMore(0u000d) +SelectInvert() +Clear() +SelectNone() +Generate("noto-serif-bold.ttf", "", 0x08) +Close() +# NotoSerif Italic +Open("NotoSerif-Italic.ttf") +SelectAll() +ClearInstrs() +#Simplify() +#RoundToInt() +SelectNone() +# Basic Latin +SelectMore(0u0020,0u007e) +# Latin-1 Supplement +SelectMore(0u00a0,0u00ff) +# Mathematical Operators +SelectMore(0u2200,0u22ff) +# General Punctuation (most) +SelectMore(0u2000,0u203a) +# Trademark sign +SelectMore(0u2122) +# Geometric Shapes +SelectMore(0u25a0,0u25ff) +# Latin Extended-A, Latin Extended-B +SelectMore(0u0100,0u024f) +# IPA Extensions +#SelectMore(0u0250,0u02af) +# Upside-down e +SelectMore(0u0259) +# Spacing Modifier Letters +SelectMore(0u02b0,0u02ff) +# Greek +SelectMore(0u0370,0u03ff) +# Greek Extended +#SelectMore(0u1f00,0u1fff) +# Cyrillic +SelectMore(0u0400,0u04ff) +# Cyrillic Supplement +#SelectMore(0u0500,0u052f) +# Latin Extended Additional +SelectMore(0u1e00,0u1eff) +# Currency Symbols +SelectMore(0u20a0,0u20d0) +# Latin Ligatures +#SelectMore(0ufb00,0ufb06) +# BOM +SelectMore(0ufeff) +# Non-marking return +SelectMore(0u000d) +SelectInvert() +Clear() +SelectNone() +Generate("noto-serif-italic.ttf", "", 0x08) +Close() +# NotoSerif Bold Italic +Open("NotoSerif-BoldItalic.ttf") +SelectAll() +ClearInstrs() +#Simplify() +#RoundToInt() +SelectNone() +# Basic Latin +SelectMore(0u0020,0u007e) +# Latin-1 Supplement +SelectMore(0u00a0,0u00ff) +# Mathematical Operators +SelectMore(0u2200,0u22ff) +# General Punctuation (most) +SelectMore(0u2000,0u203a) +# Trademark sign +SelectMore(0u2122) +# Geometric Shapes +SelectMore(0u25a0,0u25ff) +# Latin Extended-A, Latin Extended-B +SelectMore(0u0100,0u024f) +# IPA Extensions +#SelectMore(0u0250,0u02af) +# Upside-down e +SelectMore(0u0259) +# Spacing Modifier Letters +SelectMore(0u02b0,0u02ff) +# Greek +SelectMore(0u0370,0u03ff) +# Greek Extended +#SelectMore(0u1f00,0u1fff) +# Cyrillic +SelectMore(0u0400,0u04ff) +# Cyrillic Supplement +#SelectMore(0u0500,0u052f) +# Latin Extended Additional +SelectMore(0u1e00,0u1eff) +# Currency Symbols +SelectMore(0u20a0,0u20d0) +# Latin Ligatures +#SelectMore(0ufb00,0ufb06) +# BOM +SelectMore(0ufeff) +# Non-marking return +SelectMore(0u000d) +SelectInvert() +Clear() +SelectNone() +Generate("noto-serif-bold-italic.ttf", "", 0x08) +Close() |
