void swf_ExpandRect(SRECT*src, SPOINT add);
void swf_ExpandRect2(SRECT*src, SRECT*add);
+void swf_ExpandRect3(SRECT*src, SPOINT center, int radius);
SPOINT swf_TurnPoint(SPOINT p, MATRIX* m);
SRECT swf_TurnRect(SRECT r, MATRIX* m);
SHAPE * shape;
} SWFGLYPH;
+typedef struct _FONTUSAGE
+{ int* chars;
+ char is_reduced;
+} FONTUSAGE, * LPFONTUSAGE;
+
#define FONT_STYLE_BOLD 1
#define FONT_STYLE_ITALIC 2
#define FONT_ENCODING_UNICODE 1
SWFGLYPH * glyph;
U8 language;
char ** glyphnames;
+
+ FONTUSAGE * use;
+
} SWFFONT, * LPSWFFONT;
-// does not support wide characters !
-typedef struct _FONTUSAGE
-{ U8* code;
-} FONTUSAGE, * LPFONTUSAGE;
#define ET_HASTEXT 32768
#define ET_WORDWRAP 16384
int swf_FontIsBold(SWFFONT * f);
int swf_FontSetID(SWFFONT * f,U16 id);
-int swf_FontReduce(SWFFONT * f,FONTUSAGE * use);
+int swf_FontReduce(SWFFONT * f);
-int swf_FontInitUsage(SWFFONT * f,FONTUSAGE * use);
-int swf_FontUse(SWFFONT* f,FONTUSAGE * use,U8 * s);
+int swf_FontInitUsage(SWFFONT * f);
+int swf_FontUseGlyph(SWFFONT * f, int glyph);
+int swf_FontUse(SWFFONT* f,U8 * s);
int swf_FontSetDefine(TAG * t,SWFFONT * f);
int swf_FontSetDefine2(TAG * t,SWFFONT * f);
int swf_TextPrintDefineText(TAG * t,SWFFONT * f);
// Prints text defined in tag t with font f to stdout
-/* notice: if you set the fontid, make sure the corresponding font has layout information */
+void swf_FontPrepareForEditText(SWFFONT * f);
+
+/* notice: if you set the fontid, make sure you call swf_FontPrepareForEditText() for the font first */
void swf_SetEditText(TAG*tag, U16 flags, SRECT r, char*text, RGBA*color,
int maxlength, U16 font, U16 height, EditTextLayout*layout, char*variable);
-SRECT swf_SetDefineText(TAG*tag, SWFFONT*font, RGBA*rgb, char*text, int scale, MATRIX* m);
+SRECT swf_SetDefineText(TAG*tag, SWFFONT*font, RGBA*rgb, char*text, int scale);
void swf_DrawText(drawer_t*draw, SWFFONT*font, int size, char*text);
SWFFONT* swf_LoadT1Font(char*filename);
SWFFONT* swf_LoadFont(char*filename);
-void swf_SetLoadFontParameters(int scale, int skip_unused);
+void swf_SetLoadFontParameters(int scale, int skip_unused, int full_unicode);
// swfdump.c