X-Git-Url: http://git.asbjorn.biz/?a=blobdiff_plain;f=lib%2Frfxswf.h;h=903efc9f5c3838fb873b1f25b787e0cbe3f8fb2e;hb=edcb4eeac02833226bc1fb28541a6c158b0c03cd;hp=4b3ca32d3eb3f2555e7458e8e0c9223ec6d63f9f;hpb=d2238a05fee8463d460bbb4a0c22c021b560c096;p=swftools.git diff --git a/lib/rfxswf.h b/lib/rfxswf.h index 4b3ca32..903efc9 100644 --- a/lib/rfxswf.h +++ b/lib/rfxswf.h @@ -24,15 +24,13 @@ #ifndef __RFX_SWF_INCLUDED__ #define __RFX_SWF_INCLUDED__ -#ifdef __cplusplus -extern "C" { -#endif - #include #include #include #include +#ifndef WIN32 #include +#endif #include #include #include "../config.h" @@ -41,6 +39,10 @@ extern "C" { #include "./mem.h" #include "./types.h" +#ifdef __cplusplus +extern "C" { +#endif + #define DEBUG_RFXSWF #ifdef RFXSWF_DISABLESOUND #define NO_MP3 @@ -162,7 +164,6 @@ int swf_ReadSWF2(reader_t*reader, SWF * swf); // Reads SWF via callback int swf_ReadSWF(int handle,SWF * swf); // Reads SWF to memory (malloc'ed), returns length or <0 if fails int swf_WriteSWF2(writer_t*writer, SWF * swf); // Writes SWF via callback, returns length or <0 if fails int swf_WriteSWF(int handle,SWF * swf); // Writes SWF to file, returns length or <0 if fails -int swf_WriteSWC(int handle, SWF * swf); // for convenience, equal to swf->compressed=1;swf_WriteSWF(..) int swf_WriteCGI(SWF * swf); // Outputs SWF with valid CGI header to stdout void swf_FreeTags(SWF * swf); // Frees all malloc'ed memory for swf SWF* swf_CopySWF(SWF*swf); @@ -227,7 +228,7 @@ int swf_SetU8(TAG * t,U8 v); // resets Bitcount int swf_SetU16(TAG * t,U16 v); void swf_SetS16(TAG * t,int v); int swf_SetU32(TAG * t,U32 v); -#define swf_SetString(t,s) swf_SetBlock(t,s,strlen(s)+1) +#define swf_SetString(t,s) swf_SetBlock(t,s,strlen((const char *)s)+1) //int swf_GetPoint(TAG * t,SPOINT * p); // resets Bitcount int swf_GetRect(TAG * t,SRECT * r); @@ -326,11 +327,15 @@ SRECT swf_TurnRect(SRECT r, MATRIX* m); #define ST_DEFINEFONTALIGNZONES 73 /* version 8 */ #define ST_CSMTEXTSETTINGS 74 /* version 8 */ #define ST_DEFINEFONT3 75 /* version 8 */ +#define ST_SYMBOLCLASS 76 /* version 9 */ #define ST_METADATA 77 /* version 8 */ #define ST_DEFINESCALINGGRID 78 /* version 8 */ +#define ST_DOABC 82 /* version 9 */ #define ST_DEFINESHAPE4 83 /* version 8 */ #define ST_DEFINEMORPHSHAPE2 84 /* version 8 */ #define ST_SCENEDESCRIPTION 86 /* version 9 */ +#define ST_DEFINEBINARY 87 /* version 9 */ +#define ST_DEFINEFONTNAME 88 /* version 9 */ /* custom tags- only valid for swftools */ #define ST_REFLEX 777 /* to identify generator software */ @@ -393,9 +398,10 @@ typedef struct _SHAPE2 SRECT* bbox; // may be NULL } SHAPE2; +enum SHAPELINETYPE {moveTo, lineTo, splineTo}; typedef struct _SHAPELINE { - enum {moveTo, lineTo, splineTo} type; + enum SHAPELINETYPE type; SCOORD x,y; SCOORD sx,sy; //only if type==splineTo int fillstyle0; @@ -554,6 +560,10 @@ int swf_FontEnumerate(SWF * swf,void (*FontCallback) (void*,U16,U8*), void*self) int swf_FontExtract(SWF * swf,int id,SWFFONT ** f); // Fetches all available information from DefineFont, DefineFontInfo, DefineText, ... // id = FontID, id=0 -> Extract first Font +int swf_FontExtract_DefineFont2(int id, SWFFONT * font, TAG * tag); +int swf_FontExtract_DefineFontInfo(int id, SWFFONT * f, TAG * t); +int swf_FontExtract_DefineFont(int id, SWFFONT * f, TAG * t); +int swf_FontExtract_GlyphNames(int id, SWFFONT * f, TAG * tag); int swf_FontIsItalic(SWFFONT * f); int swf_FontIsBold(SWFFONT * f); @@ -1058,9 +1068,10 @@ void swf_SetFilter(TAG*tag, FILTER*f); FILTER*swf_GetFilter(TAG*tag); FILTER*swf_NewFilter(U8 type); +void AVM2_InsertStops(SWF*swf); + #ifdef __cplusplus } #endif #endif -