diff options
Diffstat (limited to 'source/fitz')
-rw-r--r-- | source/fitz/bidi-impl.h | 8 | ||||
-rw-r--r-- | source/fitz/bidi.c | 22 | ||||
-rw-r--r-- | source/fitz/text.c | 8 |
3 files changed, 23 insertions, 15 deletions
diff --git a/source/fitz/bidi-impl.h b/source/fitz/bidi-impl.h index 0de3458b..e9a5b3b4 100644 --- a/source/fitz/bidi-impl.h +++ b/source/fitz/bidi-impl.h @@ -64,6 +64,14 @@ enum BDI_N = BDI_ON /* alias, where ON, WS and S are treated the same */ }; +typedef int fz_bidi_level; /* Note: Max level is 125 */ +typedef uint8_t fz_bidi_chartype; + +enum +{ + BIDI_LEVEL_MAX = 125 /* Updated for 6.3.0 */ +}; + void fz_bidi_resolve_neutrals(fz_bidi_level baselevel, fz_bidi_chartype *pcls, const fz_bidi_level *plevel, int cch); void fz_bidi_resolve_implicit(const fz_bidi_chartype *pcls, fz_bidi_level *plevel, int cch); void fz_bidi_resolve_weak(fz_context *ctx, fz_bidi_level baselevel, fz_bidi_chartype *pcls, fz_bidi_level *plevel, int cch); diff --git a/source/fitz/bidi.c b/source/fitz/bidi.c index 979d2f1c..1fda5656 100644 --- a/source/fitz/bidi.c +++ b/source/fitz/bidi.c @@ -274,15 +274,15 @@ static fz_bidi_level base_level_from_text(fz_bidi_chartype *types, int len) { /* strong left */ case BDI_L: - return BIDI_LEFT_TO_RIGHT; + return FZ_BIDI_LTR; /* strong right */ case BDI_R: case BDI_AL: - return BIDI_RIGHT_TO_LEFT; + return FZ_BIDI_RTL; } } - return BIDI_LEFT_TO_RIGHT; + return FZ_BIDI_LTR; } static fz_bidi_direction direction_from_type(fz_bidi_chartype type) @@ -291,14 +291,14 @@ static fz_bidi_direction direction_from_type(fz_bidi_chartype type) { case BDI_L: case BDI_EN: - return BIDI_LEFT_TO_RIGHT; + return FZ_BIDI_LTR; case BDI_R: case BDI_AL: - return BIDI_RIGHT_TO_LEFT; + return FZ_BIDI_RTL; default: - return BIDI_NEUTRAL; + return FZ_BIDI_NEUTRAL; } } @@ -320,11 +320,11 @@ classify_quoted_blocks(const uint32_t *text, { switch (direction_from_type(types[i])) { - case BIDI_LEFT_TO_RIGHT: + case FZ_BIDI_LTR: ltrFound = TRUE; break; - case BIDI_RIGHT_TO_LEFT: + case FZ_BIDI_RTL: rtlFound = TRUE; break; @@ -428,13 +428,13 @@ create_levels(fz_context *ctx, classify_characters(text, types, len, flags); - if (*baseDir != BIDI_LEFT_TO_RIGHT && *baseDir != BIDI_RIGHT_TO_LEFT) + if (*baseDir != FZ_BIDI_LTR && *baseDir != FZ_BIDI_RTL) { /* Derive the base level from the text and * update *baseDir in case the caller wants to know. */ baseLevel = base_level_from_text(types, len); - *baseDir = ODD(baseLevel)==1 ? BIDI_RIGHT_TO_LEFT : BIDI_LEFT_TO_RIGHT; + *baseDir = ODD(baseLevel)==1 ? FZ_BIDI_RTL : FZ_BIDI_LTR; } else { @@ -453,7 +453,7 @@ create_levels(fz_context *ctx, { if (text[i]=='\t') { - types[i] = (*baseDir == BIDI_RIGHT_TO_LEFT) ? BDI_R : BDI_L; + types[i] = (*baseDir == FZ_BIDI_RTL) ? BDI_R : BDI_L; } } } diff --git a/source/fitz/text.c b/source/fitz/text.c index 512c671c..76838fe8 100644 --- a/source/fitz/text.c +++ b/source/fitz/text.c @@ -37,7 +37,7 @@ fz_drop_text(fz_context *ctx, const fz_text *textc) } static fz_text_span * -fz_new_text_span(fz_context *ctx, fz_font *font, int wmode, int bidi_level, fz_text_direction markup_dir, fz_text_language language, const fz_matrix *trm) +fz_new_text_span(fz_context *ctx, fz_font *font, int wmode, int bidi_level, fz_bidi_direction markup_dir, fz_text_language language, const fz_matrix *trm) { fz_text_span *span = fz_malloc_struct(ctx, fz_text_span); span->font = fz_keep_font(ctx, font); @@ -52,7 +52,7 @@ fz_new_text_span(fz_context *ctx, fz_font *font, int wmode, int bidi_level, fz_t } static fz_text_span * -fz_add_text_span(fz_context *ctx, fz_text *text, fz_font *font, int wmode, int bidi_level, fz_text_direction markup_dir, fz_text_language language, const fz_matrix *trm) +fz_add_text_span(fz_context *ctx, fz_text *text, fz_font *font, int wmode, int bidi_level, fz_bidi_direction markup_dir, fz_text_language language, const fz_matrix *trm) { if (!text->tail) { @@ -86,7 +86,7 @@ fz_grow_text_span(fz_context *ctx, fz_text_span *span, int n) } void -fz_show_glyph(fz_context *ctx, fz_text *text, fz_font *font, const fz_matrix *trm, int gid, int ucs, int wmode, int bidi_level, fz_text_direction markup_dir, fz_text_language lang) +fz_show_glyph(fz_context *ctx, fz_text *text, fz_font *font, const fz_matrix *trm, int gid, int ucs, int wmode, int bidi_level, fz_bidi_direction markup_dir, fz_text_language lang) { fz_text_span *span; @@ -105,7 +105,7 @@ fz_show_glyph(fz_context *ctx, fz_text *text, fz_font *font, const fz_matrix *tr } void -fz_show_string(fz_context *ctx, fz_text *text, fz_font *user_font, fz_matrix *trm, const char *s, int wmode, int bidi_level, fz_text_direction markup_dir, fz_text_language language) +fz_show_string(fz_context *ctx, fz_text *text, fz_font *user_font, fz_matrix *trm, const char *s, int wmode, int bidi_level, fz_bidi_direction markup_dir, fz_text_language language) { fz_font *font; int gid, ucs; |