X-Git-Url: http://git.asbjorn.it/?a=blobdiff_plain;f=lib%2Fdevices%2Fswf.c;h=67fd829399cbf794b9a27d7ff9d3ca882005ef5b;hb=8e19aa73faaa2990c0bec79ed45d38ef343c0a67;hp=e1ca707f05e974af007c4271baa5351993825e4d;hpb=8ee2916e0f52c0afa60c7dded47e78df22a6b323;p=swftools.git diff --git a/lib/devices/swf.c b/lib/devices/swf.c index e1ca707..67fd829 100644 --- a/lib/devices/swf.c +++ b/lib/devices/swf.c @@ -78,6 +78,7 @@ typedef struct _swfoutput_internal int config_enablezlib; int config_insertstoptag; int config_flashversion; + int config_reordertags; int config_splinemaxerror; int config_fontsplinemaxerror; int config_filloverlap; @@ -234,6 +235,7 @@ static swfoutput_internal* init_internal_struct() i->config_linktarget=0; i->config_internallinkfunction=0; i->config_externallinkfunction=0; + i->config_reordertags=1; i->config_linkcolor.r = i->config_linkcolor.g = i->config_linkcolor.b = 255; i->config_linkcolor.a = 0x40; @@ -1231,7 +1233,8 @@ void swfoutput_finalize(gfxdevice_t*dev) i->swf->compressed = 1; } - swf_Optimize(i->swf); + if(i->config_reordertags) + swf_Optimize(i->swf); } int swfresult_save(gfxresult_t*gfx, char*filename) @@ -1754,6 +1757,8 @@ int swf_setparameter(gfxdevice_t*dev, const char*name, const char*value) i->config_enablezlib = atoi(value); } else if(!strcmp(name, "bboxvars")) { i->config_bboxvars = atoi(value); + } else if(!strcmp(name, "reordertags")) { + i->config_reordertags = atoi(value); } else if(!strcmp(name, "internallinkfunction")) { i->config_internallinkfunction = strdup(value); } else if(!strcmp(name, "externallinkfunction")) { @@ -1839,10 +1844,10 @@ static CXFORM gfxcxform_to_cxform(gfxcxform_t* c) cx.r0 = (S16)(c->rr*256); cx.g0 = (S16)(c->gg*256); cx.b0 = (S16)(c->bb*256); - cx.a1 = c->t.a; - cx.r1 = c->t.r; - cx.g1 = c->t.g; - cx.b1 = c->t.b; + cx.a1 = c->ta; + cx.r1 = c->tr; + cx.g1 = c->tg; + cx.b1 = c->tb; return cx; }