From: handa Date: Thu, 5 Aug 2004 06:45:01 +0000 (+0000) Subject: (dump_lookup_subtable_gpos): Add support for X-Git-Tag: REL-0-9-1~20 X-Git-Url: http://git.chise.org/gitweb/?a=commitdiff_plain;h=a9027fa8b288a8bbeca8b57caaa810d63de23901;p=m17n%2Flibotf.git (dump_lookup_subtable_gpos): Add support for LookupType 5. --- diff --git a/example/otfdump.c b/example/otfdump.c index 3ec19e0..abbb43e 100644 --- a/example/otfdump.c +++ b/example/otfdump.c @@ -996,7 +996,38 @@ dump_lookup_subtable_gpos (int indent, int index, unsigned type, case 5: if (subtable->Format == 1) { - printf (" not-yet-supported"); + OTF_GPOS_MarkLig1 *mark_lig1 = &subtable->u.mark_lig1; + int i, j, k; + + free (dump_coverage (indent, "Mark", &subtable->Coverage)); + free (dump_coverage (indent, "Ligature", + &mark_lig1->LigatureCoverage)); + IPRINT ("(ClassCount %d)", mark_lig1->ClassCount); + dump_mark_array (indent, &mark_lig1->MarkArray); + IPRINT ("(LigatureArray (%d)", + mark_lig1->LigatureArray.LigatureCount); + indent++; + for (i = 0; i < mark_lig1->LigatureArray.LigatureCount; i++) + { + OTF_LigatureAttach *attach + = mark_lig1->LigatureArray.LigatureAttach + i; + + IPRINT ("(LigatureAttach (%d)", attach->ComponentCount); + indent++; + for (j = 0; j < attach->ComponentCount; j++) + { + OTF_ComponentRecord *rec = attach->ComponentRecord + j; + + IPRINT ("(LigatureAnchor (%d)", mark_lig1->ClassCount); + for (k = 0; k < mark_lig1->ClassCount; k++) + if (rec->LigatureAnchor[k].AnchorFormat) + dump_anchor (indent + 1, rec->LigatureAnchor + k); + printf (")"); + } + printf (")"); + indent--; + } + printf (")"); } else printf (" invalid");