MGlyphString *gstring, MGlyph *from, MGlyph *to,
int reverse, MDrawRegion region);
- /** Push to PLIST a list of fonts matching with FONT. LANGUAGE, if
- not Mnil, limits fonts to ones that support LANGUAGE. */
- void (*list) (MFrame *frame, MPlist *plist, MFont *font, MSymbol language);
+ /** Push to PLIST fonts matching with FONT. LANGUAGE, if not Mnil,
+ limits fonts to ones that support LANGUAGE. MAXNUM if greater
+ than 0 limits the number of listed fonts. Return how many fonts
+ a listed. */
+ int (*list) (MFrame *frame, MPlist *plist, MFont *font, MSymbol language,
+ int maxnum);
};
/** Initialize the members of FONT. */
#include <ft2build.h>
#include FT_FREETYPE_H
+#ifdef HAVE_FONTCONFIG
+#include <fontconfig/fontconfig.h>
+#endif
+
#ifdef HAVE_OTF
#include <otf.h>
#endif /* HAVE_OTF */
#ifdef HAVE_OTF
OTF *otf;
#endif /* HAVE_OTF */
+#ifdef HAVE_FONTCONFIG
+ FcLangSet *langset;
+#else
+ void *langset;
+#endif
void *extra_info; /* Xft uses this member. */
} MFTInfo;
extern int mfont__parse_name_into_font (char *name, MSymbol format,
MFont *font);
+extern MPlist *mfont__encoding_list (void);
+
extern unsigned mfont__flt_encode_char (MSymbol layouter_name, int c);
extern int mfont__flt_run (MGlyphString *gstring, int from, int to,