}
}
- positioning (ctx->font, ctx->out, 0, ctx->out->used);
+ if (ctx->font->get_metric)
+ positioning (ctx->font, ctx->out, 0, ctx->out->used);
/* Handle combining. */
if (ctx->check_mask & CombiningCodeMask)
return to;
}
-#define CHECK_FLT_STAGES(flt) ((flt)->stages || load_flt (flt) < 0)
+#define CHECK_FLT_STAGES(flt) ((flt)->stages || load_flt (flt) == 0)
\f
/* Internal API */
#endif /* !FOR_DOXYGEN || DOXYGEN_INTERNAL_MODULE */
MFLT *
+mflt_get (char *name)
+{
+ MSymbol sym = msymbol (name);
+ MFLT *flt;
+
+ if (! flt_list
+ && list_flt () < 0)
+ return NULL;
+ flt = mplist_get (flt_list, sym);
+ if (flt && ! CHECK_FLT_STAGES (flt))
+ return NULL;
+ return flt;
+}
+
+MFLT *
mflt_find (MFLTGlyphString *gstring, int pos, MFLTFont *font)
{
MPlist *plist;