diff options
author | Tor Andersson <tor.andersson@artifex.com> | 2018-04-17 17:22:40 +0200 |
---|---|---|
committer | Tor Andersson <tor.andersson@artifex.com> | 2018-04-25 16:22:51 +0200 |
commit | 85ec0410ca1eb10e0d592027e990f7e569cd4d3f (patch) | |
tree | 17f7986264900d90225764c8467df868bd8caedf /source/fitz | |
parent | d69dcb5afd27a7cbce35ac4dadec9c6145799a15 (diff) | |
download | mupdf-85ec0410ca1eb10e0d592027e990f7e569cd4d3f.tar.xz |
Update Noto fonts.
Import Source Han Serif 1.001.
Use serif fonts in preference for sans.
Diffstat (limited to 'source/fitz')
-rw-r--r-- | source/fitz/font.c | 6 | ||||
-rw-r--r-- | source/fitz/noto.c | 291 |
2 files changed, 144 insertions, 153 deletions
diff --git a/source/fitz/font.c b/source/fitz/font.c index badc7028..2e5630bd 100644 --- a/source/fitz/font.c +++ b/source/fitz/font.c @@ -1648,21 +1648,21 @@ fz_encode_character_with_fallback(fz_context *ctx, fz_font *user_font, int unico #ifndef TOFU_CJK_LANG if (script == UCDN_SCRIPT_HAN) { - font = fz_load_fallback_font(ctx, script, FZ_LANG_ja, user_font->flags.is_serif, user_font->flags.is_bold, user_font->flags.is_italic); + font = fz_load_fallback_font(ctx, script, FZ_LANG_zh_Hant, user_font->flags.is_serif, user_font->flags.is_bold, user_font->flags.is_italic); if (font) { gid = fz_encode_character(ctx, font, unicode); if (gid > 0) return *out_font = font, gid; } - font = fz_load_fallback_font(ctx, script, FZ_LANG_ko, user_font->flags.is_serif, user_font->flags.is_bold, user_font->flags.is_italic); + font = fz_load_fallback_font(ctx, script, FZ_LANG_ja, user_font->flags.is_serif, user_font->flags.is_bold, user_font->flags.is_italic); if (font) { gid = fz_encode_character(ctx, font, unicode); if (gid > 0) return *out_font = font, gid; } - font = fz_load_fallback_font(ctx, script, FZ_LANG_zh_Hant, user_font->flags.is_serif, user_font->flags.is_bold, user_font->flags.is_italic); + font = fz_load_fallback_font(ctx, script, FZ_LANG_ko, user_font->flags.is_serif, user_font->flags.is_bold, user_font->flags.is_italic); if (font) { gid = fz_encode_character(ctx, font, unicode); diff --git a/source/fitz/noto.c b/source/fitz/noto.c index 90df0f05..02a90839 100644 --- a/source/fitz/noto.c +++ b/source/fitz/noto.c @@ -6,20 +6,19 @@ /* Base 14 PDF fonts from URW. Noto fonts from Google. - Source Han Sans from Adobe for CJK. + Source Han Serif from Adobe for CJK. DroidSansFallback from Android for CJK. Charis SIL from SIL. Define TOFU to only include the Base14 and CJK fonts. - Define TOFU_CJK_LANG to skip Source Han Sans per-language fonts. + Define TOFU_CJK_LANG to skip Source Han Serif per-language fonts. Define TOFU_CJK_EXT to skip DroidSansFallbackFull (and the above). Define TOFU_CJK to skip DroidSansFallback (and the above). Define TOFU_NOTO to skip ALL non-CJK noto fonts. - Define TOFU_EMOJI to skip emoji font. - Define TOFU_HISTORIC to skip ancient/historic scripts. Define TOFU_SYMBOL to skip symbol font. + Define TOFU_EMOJI to skip emoji/extended symbol font. Define TOFU_SIL to skip the SIL fonts (warning: makes EPUB documents ugly). Define TOFU_BASE14 to skip the Base 14 fonts (warning: makes PDF unusable). @@ -27,9 +26,8 @@ #ifdef NOTO_SMALL #define TOFU_CJK_EXT -#define TOFU_EMOJI -#define TOFU_HISTORIC #define TOFU_SYMBOL +#define TOFU_EMOJI #define TOFU_SIL #endif @@ -43,9 +41,8 @@ #endif #ifdef TOFU_NOTO -#define TOFU_EMOJI -#define TOFU_HISTORIC #define TOFU_SYMBOL +#define TOFU_EMOJI #endif #define RETURN(NAME) \ @@ -124,15 +121,7 @@ fz_lookup_builtin_font(fz_context *ctx, const char *name, int is_bold, int is_it #endif #ifndef TOFU_NOTO if (!strcmp(name, "Noto Serif")) { - RETURN(noto_NotoSerif_Regular_ttf); - } - if (!strcmp(name, "Noto Sans")) { - RETURN(noto_NotoSans_Regular_ttf); - } -#endif -#ifndef TOFU_EMOJI - if (!strcmp(name, "Emoji") || !strcmp(name, "Noto Emoji")) { - RETURN(noto_NotoEmoji_Regular_ttf); + RETURN(noto_NotoSerif_Regular_otf); } #endif return *size = 0, NULL; @@ -146,11 +135,11 @@ fz_lookup_cjk_font(fz_context *ctx, int ordering, int serif, int *size, int *sub #ifndef TOFU_CJK_EXT #ifndef TOFU_CJK_LANG switch (ordering) { - case FZ_ADOBE_JAPAN_1: RETURN(han_SourceHanSansJP_Regular_otf); - case FZ_ADOBE_KOREA_1: RETURN(han_SourceHanSansKR_Regular_otf); + case FZ_ADOBE_JAPAN_1: *subfont=0; RETURN(han_SourceHanSerif_Regular_ttc); + case FZ_ADOBE_KOREA_1: *subfont=1; RETURN(han_SourceHanSerif_Regular_ttc); + case FZ_ADOBE_GB_1: *subfont=2; RETURN(han_SourceHanSerif_Regular_ttc); default: - case FZ_ADOBE_GB_1: RETURN(han_SourceHanSansCN_Regular_otf); - case FZ_ADOBE_CNS_1: RETURN(han_SourceHanSansTW_Regular_otf); + case FZ_ADOBE_CNS_1: *subfont=3; RETURN(han_SourceHanSerif_Regular_ttc); } #else RETURN(droid_DroidSansFallbackFull_ttf); @@ -163,11 +152,6 @@ fz_lookup_cjk_font(fz_context *ctx, int ordering, int serif, int *size, int *sub #endif } -#define Noto(SANS) RETURN(noto_Noto ## SANS ## _Regular_ttf) - -#define Noto2(SANS,SERIF) \ - if (serif) { RETURN(noto_Noto ## SERIF ## _Regular_ttf); } else { RETURN(noto_Noto ## SANS ## _Regular_ttf); } - const unsigned char * fz_lookup_noto_font(fz_context *ctx, int script, int language, int serif, int *size, int *subfont) { @@ -201,151 +185,158 @@ fz_lookup_noto_font(fz_context *ctx, int script, int language, int serif, int *s case FZ_LANG_zh_Hant: return fz_lookup_cjk_font(ctx, FZ_ADOBE_CNS_1, serif, size, subfont); } + case UCDN_SCRIPT_BRAILLE: break; /* no dedicated font; fallback to NotoSansSymbols will cover this */ + #ifndef TOFU_NOTO - case UCDN_SCRIPT_LATIN: Noto2(Sans, Serif); - case UCDN_SCRIPT_GREEK: Noto2(Sans, Serif); - case UCDN_SCRIPT_CYRILLIC: Noto2(Sans, Serif); + case UCDN_SCRIPT_LATIN: + case UCDN_SCRIPT_GREEK: + case UCDN_SCRIPT_CYRILLIC: + RETURN(noto_NotoSerif_Regular_otf); + break; case UCDN_SCRIPT_ARABIC: if (language == FZ_LANG_ur || language == FZ_LANG_urd) - Noto(NastaliqUrdu); - Noto2(KufiArabic, NaskhArabic); + RETURN(noto_NotoNastaliqUrdu_Regular_ttf); + RETURN(noto_NotoNaskhArabic_Regular_ttf); - case UCDN_SCRIPT_ARMENIAN: Noto2(SansArmenian, SerifArmenian); - case UCDN_SCRIPT_BALINESE: Noto(SansBalinese); - case UCDN_SCRIPT_BAMUM: Noto(SansBamum); - case UCDN_SCRIPT_BATAK: Noto(SansBatak); - case UCDN_SCRIPT_BENGALI: Noto2(SansBengali, SerifBengali); - case UCDN_SCRIPT_CANADIAN_ABORIGINAL: Noto(SansCanadianAboriginal); - case UCDN_SCRIPT_CHAM: Noto(SansCham); - case UCDN_SCRIPT_CHEROKEE: Noto(SansCherokee); - case UCDN_SCRIPT_DEVANAGARI: Noto2(SansDevanagari, SerifDevanagari); - case UCDN_SCRIPT_ETHIOPIC: Noto(SansEthiopic); - case UCDN_SCRIPT_GEORGIAN: Noto2(SansGeorgian, SerifGeorgian); - case UCDN_SCRIPT_GUJARATI: Noto2(SansGujarati, SerifGujarati); - case UCDN_SCRIPT_GURMUKHI: Noto(SansGurmukhi); - case UCDN_SCRIPT_HEBREW: Noto(SansHebrew); - case UCDN_SCRIPT_JAVANESE: Noto(SansJavanese); - case UCDN_SCRIPT_KANNADA: Noto2(SansKannada, SerifKannada); - case UCDN_SCRIPT_KAYAH_LI: Noto(SansKayahLi); - case UCDN_SCRIPT_KHMER: Noto2(SansKhmer, SerifKhmer); - case UCDN_SCRIPT_LAO: Noto2(SansLao, SerifLao); - case UCDN_SCRIPT_LEPCHA: Noto(SansLepcha); - case UCDN_SCRIPT_LIMBU: Noto(SansLimbu); - case UCDN_SCRIPT_LISU: Noto(SansLisu); - case UCDN_SCRIPT_MALAYALAM: Noto2(SansMalayalam, SerifMalayalam); - case UCDN_SCRIPT_MANDAIC: Noto(SansMandaic); - case UCDN_SCRIPT_MEETEI_MAYEK: Noto(SansMeeteiMayek); - case UCDN_SCRIPT_MONGOLIAN: Noto(SansMongolian); - case UCDN_SCRIPT_MYANMAR: Noto(SansMyanmar); - case UCDN_SCRIPT_NEW_TAI_LUE: Noto(SansNewTaiLue); - case UCDN_SCRIPT_NKO: Noto(SansNKo); - case UCDN_SCRIPT_OL_CHIKI: Noto(SansOlChiki); - case UCDN_SCRIPT_ORIYA: Noto(SansOriya); - case UCDN_SCRIPT_SAURASHTRA: Noto(SansSaurashtra); - case UCDN_SCRIPT_SINHALA: Noto(SansSinhala); - case UCDN_SCRIPT_SUNDANESE: Noto(SansSundanese); - case UCDN_SCRIPT_SYLOTI_NAGRI: Noto(SansSylotiNagri); - case UCDN_SCRIPT_SYRIAC: Noto(SansSyriacEastern); - case UCDN_SCRIPT_TAI_LE: Noto(SansTaiLe); - case UCDN_SCRIPT_TAI_THAM: Noto(SansTaiTham); - case UCDN_SCRIPT_TAI_VIET: Noto(SansTaiViet); - case UCDN_SCRIPT_TAMIL: Noto2(SansTamil, SerifTamil); - case UCDN_SCRIPT_TELUGU: Noto2(SansTelugu, SerifTelugu); - case UCDN_SCRIPT_THAANA: Noto(SansThaana); - case UCDN_SCRIPT_THAI: Noto2(SansThai, SerifThai); - case UCDN_SCRIPT_TIBETAN: Noto(SansTibetan); - case UCDN_SCRIPT_TIFINAGH: Noto(SansTifinagh); - case UCDN_SCRIPT_VAI: Noto(SansVai); - case UCDN_SCRIPT_YI: Noto(SansYi); + case UCDN_SCRIPT_SYRIAC: + /* TODO: RETURN(noto_NotoSansSyriacEastern_Regular_ttf); */ + /* TODO: RETURN(noto_NotoSansSyriacWestern_Regular_ttf); */ + /* TODO: RETURN(noto_NotoSansSyriacEstrangela_Regular_ttf); */ + RETURN(noto_NotoSansSyriacWestern_Regular_ttf); -#ifndef TOFU_HISTORIC - case UCDN_SCRIPT_AVESTAN: Noto(SansAvestan); - case UCDN_SCRIPT_BRAHMI: Noto(SansBrahmi); - case UCDN_SCRIPT_BUGINESE: Noto(SansBuginese); - case UCDN_SCRIPT_BUHID: Noto(SansBuhid); - case UCDN_SCRIPT_CARIAN: Noto(SansCarian); - case UCDN_SCRIPT_COPTIC: Noto(SansCoptic); - case UCDN_SCRIPT_CUNEIFORM: Noto(SansCuneiform); - case UCDN_SCRIPT_CYPRIOT: Noto(SansCypriot); - case UCDN_SCRIPT_DESERET: Noto(SansDeseret); - case UCDN_SCRIPT_EGYPTIAN_HIEROGLYPHS: Noto(SansEgyptianHieroglyphs); - case UCDN_SCRIPT_GLAGOLITIC: Noto(SansGlagolitic); - case UCDN_SCRIPT_GOTHIC: Noto(SansGothic); - case UCDN_SCRIPT_HANUNOO: Noto(SansHanunoo); - case UCDN_SCRIPT_IMPERIAL_ARAMAIC: Noto(SansImperialAramaic); - case UCDN_SCRIPT_INSCRIPTIONAL_PAHLAVI: Noto(SansInscriptionalPahlavi); - case UCDN_SCRIPT_INSCRIPTIONAL_PARTHIAN: Noto(SansInscriptionalParthian); - case UCDN_SCRIPT_KAITHI: Noto(SansKaithi); - case UCDN_SCRIPT_KHAROSHTHI: Noto(SansKharoshthi); - case UCDN_SCRIPT_LINEAR_B: Noto(SansLinearB); - case UCDN_SCRIPT_LYCIAN: Noto(SansLycian); - case UCDN_SCRIPT_LYDIAN: Noto(SansLydian); - case UCDN_SCRIPT_OGHAM: Noto(SansOgham); - case UCDN_SCRIPT_OLD_ITALIC: Noto(SansOldItalic); - case UCDN_SCRIPT_OLD_PERSIAN: Noto(SansOldPersian); - case UCDN_SCRIPT_OLD_SOUTH_ARABIAN: Noto(SansOldSouthArabian); - case UCDN_SCRIPT_OLD_TURKIC: Noto(SansOldTurkic); - case UCDN_SCRIPT_OSMANYA: Noto(SansOsmanya); - case UCDN_SCRIPT_PHAGS_PA: Noto(SansPhagsPa); - case UCDN_SCRIPT_PHOENICIAN: Noto(SansPhoenician); - case UCDN_SCRIPT_REJANG: Noto(SansRejang); - case UCDN_SCRIPT_RUNIC: Noto(SansRunic); - case UCDN_SCRIPT_SAMARITAN: Noto(SansSamaritan); - case UCDN_SCRIPT_SHAVIAN: Noto(SansShavian); - case UCDN_SCRIPT_TAGALOG: Noto(SansTagalog); - case UCDN_SCRIPT_TAGBANWA: Noto(SansTagbanwa); - case UCDN_SCRIPT_UGARITIC: Noto(SansUgaritic); -#endif + case UCDN_SCRIPT_MEROITIC_CURSIVE: + case UCDN_SCRIPT_MEROITIC_HIEROGLYPHS: + RETURN(noto_NotoSansMeroitic_Regular_otf); - /* No fonts available for these scripts: */ - case UCDN_SCRIPT_ADLAM: break; - case UCDN_SCRIPT_BRAILLE: break; /* no dedicated font; fallback to NotoSansSymbols will cover this */ - case UCDN_SCRIPT_CHAKMA: break; - case UCDN_SCRIPT_MIAO: break; - case UCDN_SCRIPT_NEWA: break; -#ifndef TOFU_HISTORIC - case UCDN_SCRIPT_AHOM: break; - case UCDN_SCRIPT_ANATOLIAN_HIEROGLYPHS: break; - case UCDN_SCRIPT_BASSA_VAH: break; - case UCDN_SCRIPT_BHAIKSUKI: break; + case UCDN_SCRIPT_ADLAM: RETURN(noto_NotoSansAdlam_Regular_otf); + case UCDN_SCRIPT_AHOM: RETURN(noto_NotoSansAhom_Regular_otf); + case UCDN_SCRIPT_ANATOLIAN_HIEROGLYPHS: RETURN(noto_NotoSansAnatolianHieroglyphs_Regular_otf); + case UCDN_SCRIPT_ARMENIAN: RETURN(noto_NotoSerifArmenian_Regular_otf); + case UCDN_SCRIPT_AVESTAN: RETURN(noto_NotoSansAvestan_Regular_otf); + case UCDN_SCRIPT_BALINESE: RETURN(noto_NotoSerifBalinese_Regular_otf); + case UCDN_SCRIPT_BAMUM: RETURN(noto_NotoSansBamum_Regular_otf); + case UCDN_SCRIPT_BASSA_VAH: RETURN(noto_NotoSansBassaVah_Regular_otf); + case UCDN_SCRIPT_BATAK: RETURN(noto_NotoSansBatak_Regular_otf); + case UCDN_SCRIPT_BENGALI: RETURN(noto_NotoSansBengali_Regular_otf); + case UCDN_SCRIPT_BHAIKSUKI: RETURN(noto_NotoSansBhaiksuki_Regular_otf); + case UCDN_SCRIPT_BRAHMI: RETURN(noto_NotoSansBrahmi_Regular_otf); + case UCDN_SCRIPT_BUGINESE: RETURN(noto_NotoSansBuginese_Regular_otf); + case UCDN_SCRIPT_BUHID: RETURN(noto_NotoSansBuhid_Regular_otf); + case UCDN_SCRIPT_CANADIAN_ABORIGINAL: RETURN(noto_NotoSansCanadianAboriginal_Regular_otf); + case UCDN_SCRIPT_CARIAN: RETURN(noto_NotoSansCarian_Regular_otf); case UCDN_SCRIPT_CAUCASIAN_ALBANIAN: break; + case UCDN_SCRIPT_CHAKMA: RETURN(noto_NotoSansChakma_Regular_otf); + case UCDN_SCRIPT_CHAM: RETURN(noto_NotoSansCham_Regular_otf); + case UCDN_SCRIPT_CHEROKEE: RETURN(noto_NotoSansCherokee_Regular_otf); + case UCDN_SCRIPT_COPTIC: RETURN(noto_NotoSansCoptic_Regular_otf); + case UCDN_SCRIPT_CUNEIFORM: RETURN(noto_NotoSansCuneiform_Regular_otf); + case UCDN_SCRIPT_CYPRIOT: RETURN(noto_NotoSansCypriot_Regular_otf); + case UCDN_SCRIPT_DESERET: RETURN(noto_NotoSansDeseret_Regular_otf); + case UCDN_SCRIPT_DEVANAGARI: RETURN(noto_NotoSansDevanagari_Regular_otf); case UCDN_SCRIPT_DUPLOYAN: break; - case UCDN_SCRIPT_ELBASAN: break; + case UCDN_SCRIPT_EGYPTIAN_HIEROGLYPHS: RETURN(noto_NotoSansEgyptianHieroglyphs_Regular_otf); + case UCDN_SCRIPT_ELBASAN: RETURN(noto_NotoSansElbasan_Regular_otf); + case UCDN_SCRIPT_ETHIOPIC: RETURN(noto_NotoSerifEthiopic_Regular_otf); + case UCDN_SCRIPT_GEORGIAN: RETURN(noto_NotoSerifGeorgian_Regular_otf); + case UCDN_SCRIPT_GLAGOLITIC: RETURN(noto_NotoSansGlagolitic_Regular_otf); + case UCDN_SCRIPT_GOTHIC: RETURN(noto_NotoSansGothic_Regular_otf); case UCDN_SCRIPT_GRANTHA: break; - case UCDN_SCRIPT_HATRAN: break; + case UCDN_SCRIPT_GUJARATI: RETURN(noto_NotoSerifGujarati_Regular_otf); + case UCDN_SCRIPT_GURMUKHI: RETURN(noto_NotoSerifGurmukhi_Regular_otf); + case UCDN_SCRIPT_HANUNOO: RETURN(noto_NotoSansHanunoo_Regular_otf); + case UCDN_SCRIPT_HATRAN: RETURN(noto_NotoSansHatran_Regular_otf); + case UCDN_SCRIPT_HEBREW: RETURN(noto_NotoSerifHebrew_Regular_otf); + case UCDN_SCRIPT_IMPERIAL_ARAMAIC: RETURN(noto_NotoSansImperialAramaic_Regular_otf); + case UCDN_SCRIPT_INSCRIPTIONAL_PAHLAVI: RETURN(noto_NotoSansInscriptionalPahlavi_Regular_otf); + case UCDN_SCRIPT_INSCRIPTIONAL_PARTHIAN: RETURN(noto_NotoSansInscriptionalParthian_Regular_otf); + case UCDN_SCRIPT_JAVANESE: RETURN(noto_NotoSansJavanese_Regular_ttf); + case UCDN_SCRIPT_KAITHI: RETURN(noto_NotoSansKaithi_Regular_otf); + case UCDN_SCRIPT_KANNADA: RETURN(noto_NotoSerifKannada_Regular_otf); + case UCDN_SCRIPT_KAYAH_LI: RETURN(noto_NotoSansKayahLi_Regular_otf); + case UCDN_SCRIPT_KHAROSHTHI: RETURN(noto_NotoSansKharoshthi_Regular_otf); + case UCDN_SCRIPT_KHMER: RETURN(noto_NotoSerifKhmer_Regular_otf); case UCDN_SCRIPT_KHOJKI: break; case UCDN_SCRIPT_KHUDAWADI: break; - case UCDN_SCRIPT_LINEAR_A: break; + case UCDN_SCRIPT_LAO: RETURN(noto_NotoSerifLao_Regular_otf); + case UCDN_SCRIPT_LEPCHA: RETURN(noto_NotoSansLepcha_Regular_otf); + case UCDN_SCRIPT_LIMBU: RETURN(noto_NotoSansLimbu_Regular_otf); + case UCDN_SCRIPT_LINEAR_A: RETURN(noto_NotoSansLinearA_Regular_otf); + case UCDN_SCRIPT_LINEAR_B: RETURN(noto_NotoSansLinearB_Regular_otf); + case UCDN_SCRIPT_LISU: RETURN(noto_NotoSansLisu_Regular_otf); + case UCDN_SCRIPT_LYCIAN: RETURN(noto_NotoSansLycian_Regular_otf); + case UCDN_SCRIPT_LYDIAN: RETURN(noto_NotoSansLydian_Regular_otf); case UCDN_SCRIPT_MAHAJANI: break; - case UCDN_SCRIPT_MANICHAEAN: break; - case UCDN_SCRIPT_MARCHEN: break; - case UCDN_SCRIPT_MENDE_KIKAKUI: break; - case UCDN_SCRIPT_MEROITIC_CURSIVE: break; - case UCDN_SCRIPT_MEROITIC_HIEROGLYPHS: break; + case UCDN_SCRIPT_MALAYALAM: RETURN(noto_NotoSansMalayalam_Regular_otf); + case UCDN_SCRIPT_MANDAIC: RETURN(noto_NotoSansMandaic_Regular_otf); + case UCDN_SCRIPT_MANICHAEAN: RETURN(noto_NotoSansManichaean_Regular_otf); + case UCDN_SCRIPT_MARCHEN: RETURN(noto_NotoSansMarchen_Regular_otf); + case UCDN_SCRIPT_MASARAM_GONDI: break; + case UCDN_SCRIPT_MEETEI_MAYEK: RETURN(noto_NotoSansMeeteiMayek_Regular_otf); + case UCDN_SCRIPT_MENDE_KIKAKUI: RETURN(noto_NotoSansMendeKikakui_Regular_otf); + case UCDN_SCRIPT_MIAO: RETURN(noto_NotoSansMiao_Regular_otf); case UCDN_SCRIPT_MODI: break; - case UCDN_SCRIPT_MRO: break; - case UCDN_SCRIPT_MULTANI: break; - case UCDN_SCRIPT_NABATAEAN: break; + case UCDN_SCRIPT_MONGOLIAN: RETURN(noto_NotoSansMongolian_Regular_ttf); + case UCDN_SCRIPT_MRO: RETURN(noto_NotoSansMro_Regular_otf); + case UCDN_SCRIPT_MULTANI: RETURN(noto_NotoSansMultani_Regular_otf); + case UCDN_SCRIPT_MYANMAR: RETURN(noto_NotoSerifMyanmar_Regular_otf); + case UCDN_SCRIPT_NABATAEAN: RETURN(noto_NotoSansNabataean_Regular_otf); + case UCDN_SCRIPT_NEWA: RETURN(noto_NotoSansNewa_Regular_otf); + case UCDN_SCRIPT_NEW_TAI_LUE: RETURN(noto_NotoSansNewTaiLue_Regular_otf); + case UCDN_SCRIPT_NKO: RETURN(noto_NotoSansNKo_Regular_otf); + case UCDN_SCRIPT_NUSHU: break; + case UCDN_SCRIPT_OGHAM: RETURN(noto_NotoSansOgham_Regular_otf); case UCDN_SCRIPT_OLD_HUNGARIAN: break; - case UCDN_SCRIPT_OLD_NORTH_ARABIAN: break; - case UCDN_SCRIPT_OLD_PERMIC: break; - case UCDN_SCRIPT_OSAGE: break; - case UCDN_SCRIPT_PAHAWH_HMONG: break; - case UCDN_SCRIPT_PALMYRENE: break; - case UCDN_SCRIPT_PAU_CIN_HAU: break; + case UCDN_SCRIPT_OLD_ITALIC: RETURN(noto_NotoSansOldItalic_Regular_otf); + case UCDN_SCRIPT_OLD_NORTH_ARABIAN: RETURN(noto_NotoSansOldNorthArabian_Regular_otf); + case UCDN_SCRIPT_OLD_PERMIC: RETURN(noto_NotoSansOldPermic_Regular_otf); + case UCDN_SCRIPT_OLD_PERSIAN: RETURN(noto_NotoSansOldPersian_Regular_otf); + case UCDN_SCRIPT_OLD_SOUTH_ARABIAN: RETURN(noto_NotoSansOldSouthArabian_Regular_otf); + case UCDN_SCRIPT_OLD_TURKIC: RETURN(noto_NotoSansOldTurkic_Regular_otf); + case UCDN_SCRIPT_OL_CHIKI: RETURN(noto_NotoSansOlChiki_Regular_otf); + case UCDN_SCRIPT_ORIYA: RETURN(noto_NotoSansOriya_Regular_ttf); + case UCDN_SCRIPT_OSAGE: RETURN(noto_NotoSansOsage_Regular_otf); + case UCDN_SCRIPT_OSMANYA: RETURN(noto_NotoSansOsmanya_Regular_otf); + case UCDN_SCRIPT_PAHAWH_HMONG: RETURN(noto_NotoSansPahawhHmong_Regular_otf); + case UCDN_SCRIPT_PALMYRENE: RETURN(noto_NotoSansPalmyrene_Regular_otf); + case UCDN_SCRIPT_PAU_CIN_HAU: RETURN(noto_NotoSansPauCinHau_Regular_otf); + case UCDN_SCRIPT_PHAGS_PA: RETURN(noto_NotoSansPhagsPa_Regular_otf); + case UCDN_SCRIPT_PHOENICIAN: RETURN(noto_NotoSansPhoenician_Regular_otf); case UCDN_SCRIPT_PSALTER_PAHLAVI: break; - case UCDN_SCRIPT_SHARADA: break; + case UCDN_SCRIPT_REJANG: RETURN(noto_NotoSansRejang_Regular_otf); + case UCDN_SCRIPT_RUNIC: RETURN(noto_NotoSansRunic_Regular_otf); + case UCDN_SCRIPT_SAMARITAN: RETURN(noto_NotoSansSamaritan_Regular_otf); + case UCDN_SCRIPT_SAURASHTRA: RETURN(noto_NotoSansSaurashtra_Regular_otf); + case UCDN_SCRIPT_SHARADA: RETURN(noto_NotoSansSharada_Regular_otf); + case UCDN_SCRIPT_SHAVIAN: RETURN(noto_NotoSansShavian_Regular_otf); case UCDN_SCRIPT_SIDDHAM: break; case UCDN_SCRIPT_SIGNWRITING: break; - case UCDN_SCRIPT_SORA_SOMPENG: break; + case UCDN_SCRIPT_SINHALA: RETURN(noto_NotoSerifSinhala_Regular_otf); + case UCDN_SCRIPT_SORA_SOMPENG: RETURN(noto_NotoSansSoraSompeng_Regular_otf); + case UCDN_SCRIPT_SOYOMBO: break; + case UCDN_SCRIPT_SUNDANESE: RETURN(noto_NotoSansSundanese_Regular_otf); + case UCDN_SCRIPT_SYLOTI_NAGRI: RETURN(noto_NotoSansSylotiNagri_Regular_otf); + case UCDN_SCRIPT_TAGALOG: RETURN(noto_NotoSansTagalog_Regular_otf); + case UCDN_SCRIPT_TAGBANWA: RETURN(noto_NotoSansTagbanwa_Regular_otf); + case UCDN_SCRIPT_TAI_LE: RETURN(noto_NotoSansTaiLe_Regular_otf); + case UCDN_SCRIPT_TAI_THAM: RETURN(noto_NotoSansTaiTham_Regular_ttf); + case UCDN_SCRIPT_TAI_VIET: RETURN(noto_NotoSansTaiViet_Regular_otf); case UCDN_SCRIPT_TAKRI: break; + case UCDN_SCRIPT_TAMIL: RETURN(noto_NotoSerifTamil_Regular_otf); case UCDN_SCRIPT_TANGUT: break; + case UCDN_SCRIPT_TELUGU: RETURN(noto_NotoSerifTelugu_Regular_ttf); + case UCDN_SCRIPT_THAANA: RETURN(noto_NotoSansThaana_Regular_ttf); + case UCDN_SCRIPT_THAI: RETURN(noto_NotoSerifThai_Regular_otf); + case UCDN_SCRIPT_TIBETAN: RETURN(noto_NotoSansTibetan_Regular_ttf); + case UCDN_SCRIPT_TIFINAGH: RETURN(noto_NotoSansTifinagh_Regular_otf); case UCDN_SCRIPT_TIRHUTA: break; + case UCDN_SCRIPT_UGARITIC: RETURN(noto_NotoSansUgaritic_Regular_otf); + case UCDN_SCRIPT_VAI: RETURN(noto_NotoSansVai_Regular_otf); case UCDN_SCRIPT_WARANG_CITI: break; -#endif + case UCDN_SCRIPT_YI: RETURN(noto_NotoSansYi_Regular_otf); + case UCDN_SCRIPT_ZANABAZAR_SQUARE: break; -#endif +#endif /* TOFU_NOTO */ } return *size = 0, NULL; @@ -355,7 +346,7 @@ const unsigned char * fz_lookup_noto_symbol_font(fz_context *ctx, int *size) { #ifndef TOFU_SYMBOL - RETURN(noto_NotoSansSymbols_Regular_ttf); + RETURN(noto_NotoSansSymbols_Regular_otf); #else return *size = 0, NULL; #endif @@ -365,7 +356,7 @@ const unsigned char * fz_lookup_noto_emoji_font(fz_context *ctx, int *size) { #ifndef TOFU_EMOJI - RETURN(noto_NotoEmoji_Regular_ttf); + RETURN(noto_NotoSansSymbols2_Regular_otf); #else return *size = 0, NULL; #endif |