From da061cc8a8ca89ed1fb53d65023e9621922b5385 Mon Sep 17 00:00:00 2001 From: handa Date: Mon, 21 Jul 2003 12:02:27 +0000 Subject: [PATCH] *** empty log message *** --- example/otfdump.c | 19 +++++++++++++++++++ src/otfopen.c | 15 +++++++++++++++ 2 files changed, 34 insertions(+) diff --git a/example/otfdump.c b/example/otfdump.c index d9d10dc..80b580d 100644 --- a/example/otfdump.c +++ b/example/otfdump.c @@ -1183,6 +1183,25 @@ dump_cmap_table (int indent, OTF_cmap *cmap) printf (")"); } break; + + case 6: + { + OTF_EncodingSubtable6 *sub6 + = cmap->EncodingRecord[i].subtable.f.f6; + int j; + + IPRINT ("(firstCode %d) (entryCount %d)", + sub6->firstCode, sub6->entryCount); + IPRINT ("(glyphIdArray"); + for (j = 0; j < sub6->entryCount; j++) + { + if ((j % 16) == 0) + IPRINT (" "); + printf (" %3d", sub6->glyphIdArray[j]); + } + printf (")"); + } + break; } indent -= 2; diff --git a/src/otfopen.c b/src/otfopen.c index 7bfbea0..b6da3db 100644 --- a/src/otfopen.c +++ b/src/otfopen.c @@ -528,6 +528,21 @@ read_cmap_table (OTF *otf, OTF_Stream *stream) for (j = 0; j < sub4->GlyphCount; j++) READ_USHORT (stream, sub4->glyphIdArray[j]); } + break; + + case 6: + { + OTF_EncodingSubtable6 *sub6; + int j; + + OTF_MALLOC (sub6, 1, " (EncodingSubtable6)"); + cmap->EncodingRecord[i].subtable.f.f6 = sub6; + READ_USHORT (stream, sub6->firstCode); + READ_USHORT (stream, sub6->entryCount); + OTF_MALLOC (sub6->glyphIdArray, sub6->entryCount, " (GlyphCount)"); + for (j = 0; j < sub6->entryCount; j++) + READ_USHORT (stream, sub6->glyphIdArray[j]); + } } } return cmap; -- 1.7.10.4