diff options
author | Mattias Andrée <maandree@kth.se> | 2021-10-30 00:35:08 +0200 |
---|---|---|
committer | Mattias Andrée <maandree@kth.se> | 2021-10-30 00:35:37 +0200 |
commit | 0fe690ba5a23e7d0962b0a1a868df293a3bbe425 (patch) | |
tree | 17ef16b564c13f66127d5f7600c2542a502db39e /libparsepcf_get_glyph_index.c | |
parent | First commit (diff) | |
download | libparsepcf-0fe690ba5a23e7d0962b0a1a868df293a3bbe425.tar.gz libparsepcf-0fe690ba5a23e7d0962b0a1a868df293a3bbe425.tar.bz2 libparsepcf-0fe690ba5a23e7d0962b0a1a868df293a3bbe425.tar.xz |
Second commit
Signed-off-by: Mattias Andrée <maandree@kth.se>
Diffstat (limited to '')
-rw-r--r-- | libparsepcf_get_glyph_index.c | 36 |
1 files changed, 0 insertions, 36 deletions
diff --git a/libparsepcf_get_glyph_index.c b/libparsepcf_get_glyph_index.c deleted file mode 100644 index 86150d6..0000000 --- a/libparsepcf_get_glyph_index.c +++ /dev/null @@ -1,36 +0,0 @@ -/* See LICENSE file for copyright and license details. */ -#include "common.h" - - -int -libparsepcf_get_glyph_index(const char *file, size_t size, - const struct libparsepcf_table *table, - const struct libparsepcf_encoding *meta, - const char *text, size_t *out) -{ - int msb = table->format & LIBPARSEPCF_BYTE; - size_t pos, i, j; - - (void) size; - - i = (size_t)*(const uint8_t *)text; - if (i < (size_t)meta->min_byte1 || i > (size_t)meta->max_byte1) - goto not_encoded; - i -= (size_t)meta->min_byte1; - - if (meta->min_byte2 | meta->max_byte2) { - j = (size_t)*(const uint8_t *)text; - if (j < (size_t)meta->min_byte2 || j > (size_t)meta->max_byte2) - goto not_encoded; - j -= (size_t)meta->min_byte2; - i = i * (meta->max_byte2 - meta->min_byte2 + 1) + j; - } - - pos = table->offset + 14 + i * 2; - *out = (size_t)PARSE_UINT16(&file[pos], msb); - return 0; - -not_encoded: - *out = (size_t)0xFFFF; - return 0; -} |