X-Git-Url: http://git.asbjorn.it/?a=blobdiff_plain;f=pdf2swf%2Fswfoutput.cc;h=8f021823df6e073c1d399f024958e68ea861c449;hb=695383ebfdb4f793da19f7da8df24aee35b468b8;hp=3318cfbc4848c098b0da55ad16a2a73501c829ef;hpb=ad82acda333074c23bd6aa010faa5286c89828f0;p=swftools.git diff --git a/pdf2swf/swfoutput.cc b/pdf2swf/swfoutput.cc index 3318cfb..8f02182 100644 --- a/pdf2swf/swfoutput.cc +++ b/pdf2swf/swfoutput.cc @@ -1160,7 +1160,7 @@ static void endtext(swfoutput*obj) swf_SetRect(i->tag,&r); MATRIX m; - swf_GetMatrix(0, &m); + swf_GetMatrix(0, &m); /* set unit matrix- the real matrix is in the placeobject */ swf_SetMatrix(i->tag,&m); putcharacters(obj, i->tag); @@ -1749,7 +1749,7 @@ void swfoutput_finalize(struct swfoutput*obj) if(i->tag && i->tag->id == ST_END) return; //already done - + if(i->frameno == i->lastframeno) // fix: add missing pagefeed swfoutput_pagefeed(obj); @@ -1767,6 +1767,15 @@ void swfoutput_finalize(struct swfoutput*obj) iterator = iterator->next; } i->tag = swf_InsertTag(i->tag,ST_END); + TAG* tag = i->tag->prev; + + /* remove the removeobject2 tags between the last ST_SHOWFRAME + and the ST_END- they confuse the flash player */ + while(tag->id == ST_REMOVEOBJECT2) { + TAG* prev = tag->prev; + swf_DeleteTag(tag); + tag = prev; + } } SWF* swfoutput_get(struct swfoutput*obj)