summaryrefslogtreecommitdiff
path: root/source/fitz/noto.c
diff options
context:
space:
mode:
Diffstat (limited to 'source/fitz/noto.c')
-rw-r--r--source/fitz/noto.c22
1 files changed, 12 insertions, 10 deletions
diff --git a/source/fitz/noto.c b/source/fitz/noto.c
index 1d039794..90df0f05 100644
--- a/source/fitz/noto.c
+++ b/source/fitz/noto.c
@@ -139,9 +139,9 @@ fz_lookup_builtin_font(fz_context *ctx, const char *name, int is_bold, int is_it
}
const unsigned char *
-fz_lookup_cjk_font(fz_context *ctx, int ordering, int serif, int wmode, int *size, int *index)
+fz_lookup_cjk_font(fz_context *ctx, int ordering, int serif, int *size, int *subfont)
{
- if (index) *index = 0;
+ *subfont = 0;
#ifndef TOFU_CJK
#ifndef TOFU_CJK_EXT
#ifndef TOFU_CJK_LANG
@@ -169,11 +169,13 @@ fz_lookup_cjk_font(fz_context *ctx, int ordering, int serif, int wmode, int *siz
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)
+fz_lookup_noto_font(fz_context *ctx, int script, int language, int serif, int *size, int *subfont)
{
/* TODO: Noto(SansSyriacEstrangela); */
/* TODO: Noto(SansSyriacWestern); */
+ *subfont = 0;
+
switch (script)
{
default:
@@ -183,20 +185,20 @@ fz_lookup_noto_font(fz_context *ctx, int script, int language, int serif, int *s
break;
case UCDN_SCRIPT_HANGUL:
- return fz_lookup_cjk_font(ctx, FZ_ADOBE_KOREA_1, serif, 0, size, NULL);
+ return fz_lookup_cjk_font(ctx, FZ_ADOBE_KOREA_1, serif, size, subfont);
case UCDN_SCRIPT_HIRAGANA:
case UCDN_SCRIPT_KATAKANA:
- return fz_lookup_cjk_font(ctx, FZ_ADOBE_JAPAN_1, serif, 0, size, NULL);
+ return fz_lookup_cjk_font(ctx, FZ_ADOBE_JAPAN_1, serif, size, subfont);
case UCDN_SCRIPT_BOPOMOFO:
- return fz_lookup_cjk_font(ctx, FZ_ADOBE_CNS_1, serif, 0, size, NULL);
+ return fz_lookup_cjk_font(ctx, FZ_ADOBE_CNS_1, serif, size, subfont);
case UCDN_SCRIPT_HAN:
switch (language)
{
- case FZ_LANG_ja: return fz_lookup_cjk_font(ctx, FZ_ADOBE_JAPAN_1, serif, 0, size, NULL);
- case FZ_LANG_ko: return fz_lookup_cjk_font(ctx, FZ_ADOBE_KOREA_1, serif, 0, size, NULL);
- case FZ_LANG_zh_Hant: return fz_lookup_cjk_font(ctx, FZ_ADOBE_CNS_1, serif, 0, size, NULL);
+ case FZ_LANG_ja: return fz_lookup_cjk_font(ctx, FZ_ADOBE_JAPAN_1, serif, size, subfont);
+ case FZ_LANG_ko: return fz_lookup_cjk_font(ctx, FZ_ADOBE_KOREA_1, serif, size, subfont);
+ case FZ_LANG_zh_Hans: return fz_lookup_cjk_font(ctx, FZ_ADOBE_GB_1, serif, size, subfont);
default:
- case FZ_LANG_zh_Hans: return fz_lookup_cjk_font(ctx, FZ_ADOBE_GB_1, serif, 0, size, NULL);
+ case FZ_LANG_zh_Hant: return fz_lookup_cjk_font(ctx, FZ_ADOBE_CNS_1, serif, size, subfont);
}
#ifndef TOFU_NOTO