git.asbjorn.biz
/
swftools.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
added AREXT (.a on Unix, .lib on Windows).
[swftools.git]
/
pdf2swf
/
swfoutput.cc
diff --git
a/pdf2swf/swfoutput.cc
b/pdf2swf/swfoutput.cc
index
3318cfb
..
8f02182
100644
(file)
--- 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_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);
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->tag && i->tag->id == ST_END)
return; //already done
-
+
if(i->frameno == i->lastframeno) // fix: add missing pagefeed
swfoutput_pagefeed(obj);
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);
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)
}
SWF* swfoutput_get(struct swfoutput*obj)