X-Git-Url: http://git.asbjorn.biz/?a=blobdiff_plain;f=lib%2Frfxswf.h;h=7f8eb1cb32b88165d6693bee6da0a6a7c465568d;hb=818ac2906f7eb845c097ef8362a9c1f231978f44;hp=f5868490fc7b7d063277b7434b96063b6ff85a90;hpb=275179c87d277416cfcc0d7a346ed60c4545ba31;p=swftools.git diff --git a/lib/rfxswf.h b/lib/rfxswf.h index f586849..7f8eb1c 100644 --- a/lib/rfxswf.h +++ b/lib/rfxswf.h @@ -245,6 +245,9 @@ int swf_SetU32(TAG * t,U32 v); void swf_SetF16(TAG * t,float f); void swf_SetString(TAG*t,const char*s); +float floatToF16(float f); +float F16toFloat(U16 x); + /* abc datatypes */ U32 swf_GetU30(TAG*tag); int swf_SetU30(TAG*tag, U32 u); @@ -527,11 +530,25 @@ typedef struct SHAPE * shape; } SWFGLYPH; +typedef struct _SWFGLYPHPAIR +{ + U16 char1; + U16 char2; + int num; +} SWFGLYPHPAIR; + typedef struct _FONTUSAGE { int* chars; char is_reduced; int used_glyphs; int glyphs_specified; + U16 smallest_size; + + SWFGLYPHPAIR* neighbors; + int num_neighbors; + int neighbors_size; + int* neighbors_hash; + int neighbors_hash_size; } FONTUSAGE; #define FONT_STYLE_BOLD 1 @@ -540,6 +557,10 @@ typedef struct _FONTUSAGE #define FONT_ENCODING_ANSI 2 #define FONT_ENCODING_SHIFTJIS 4 +#define FONTALIGN_THIN 0 +#define FONTALIGN_MEDIUM 1 +#define FONTALIGN_THICK 2 + typedef struct _ALIGNZONE { U16 x,y; @@ -622,9 +643,11 @@ int swf_FontReduce(SWFFONT * f); int swf_FontReduce_swfc(SWFFONT * f); int swf_FontInitUsage(SWFFONT * f); -int swf_FontUseGlyph(SWFFONT * f, int glyph); +int swf_FontUseGlyph(SWFFONT * f, int glyph, U16 size); +void swf_FontUsePair(SWFFONT * f, int char1, int char2); +int swf_FontUseGetPair(SWFFONT * f, int char1, int char2); int swf_FontUseAll(SWFFONT* f); -int swf_FontUseUTF8(SWFFONT * f, U8 * s); +int swf_FontUseUTF8(SWFFONT * f, U8 * s, U16 size); int swf_FontUse(SWFFONT* f,U8 * s); int swf_FontSetDefine(TAG * t,SWFFONT * f);