* new function: swfoutput_drawimageagain, which draws an image which
authorkramm <kramm>
Mon, 29 Oct 2001 09:24:46 +0000 (09:24 +0000)
committerkramm <kramm>
Mon, 29 Oct 2001 09:24:46 +0000 (09:24 +0000)
  was encountered before.
* the other swfoutput_drawimage* functions now return an id to be
  used for swfoutput_drawimageagain

pdf2swf/swfoutput.cc
pdf2swf/swfoutput.h

index 5a634b5..8a9a55b 100644 (file)
@@ -1100,7 +1100,7 @@ void drawimage(struct swfoutput*obj, int bitid, int sizex,int sizey,
     ObjectPlace(tag,myshapeid,/*depth*/depth++,NULL,NULL,NULL);
 }
 
-void swfoutput_drawimagejpeg(struct swfoutput*obj, char*filename, int sizex,int sizey, 
+int swfoutput_drawimagejpeg(struct swfoutput*obj, char*filename, int sizex,int sizey, 
        double x1,double y1,
        double x2,double y2,
        double x3,double y3,
@@ -1117,9 +1117,10 @@ void swfoutput_drawimagejpeg(struct swfoutput*obj, char*filename, int sizex,int
     SetJPEGBits(tag, filename, jpegquality);
 
     drawimage(obj, bitid, sizex, sizey, x1,y1,x2,y2,x3,y3,x4,y4);
+    return bitid;
 }
 
-void swfoutput_drawimagelossless(struct swfoutput*obj, RGBA*mem, int sizex,int sizey, 
+int swfoutput_drawimagelossless(struct swfoutput*obj, RGBA*mem, int sizex,int sizey, 
        double x1,double y1,
        double x2,double y2,
        double x3,double y3,
@@ -1136,9 +1137,10 @@ void swfoutput_drawimagelossless(struct swfoutput*obj, RGBA*mem, int sizex,int s
     SetLosslessBits(tag,sizex,sizey,mem, BMF_32BIT);
     
     drawimage(obj, bitid, sizex, sizey, x1,y1,x2,y2,x3,y3,x4,y4);
+    return bitid;
 }
 
-void swfoutput_drawimagelossless256(struct swfoutput*obj, U8*mem, RGBA*pal, int sizex,int sizey, 
+int swfoutput_drawimagelossless256(struct swfoutput*obj, U8*mem, RGBA*pal, int sizex,int sizey, 
        double x1,double y1,
        double x2,double y2,
        double x3,double y3,
@@ -1155,5 +1157,20 @@ void swfoutput_drawimagelossless256(struct swfoutput*obj, U8*mem, RGBA*pal, int
     SetLosslessBitsIndexed(tag,sizex,sizey,mem, pal, 256);
   
     drawimage(obj, bitid, sizex, sizey, x1,y1,x2,y2,x3,y3,x4,y4);
+    return bitid;
+}
+
+void swfoutput_drawimageagain(struct swfoutput*obj, int id, int sizex,int sizey, 
+       double x1,double y1,
+       double x2,double y2,
+       double x3,double y3,
+       double x4,double y4)
+{
+    if(shapeid>=0)
+     endshape();
+    if(textid>=0)
+     endtext();
+
+    drawimage(obj, id, sizex, sizey, x1,y1,x2,y2,x3,y3,x4,y4);
 }
 
index 2002615..e8111ec 100644 (file)
@@ -91,17 +91,22 @@ void swfoutput_drawchar(struct swfoutput*,double x,double y,char*a);
 void swfoutput_drawpath(struct swfoutput*, T1_OUTLINE*outline, struct swfmatrix*m);
 void swfoutput_startclip(struct swfoutput*, T1_OUTLINE*outline, struct swfmatrix*m);
 void swfoutput_endclip(struct swfoutput*);
-void swfoutput_drawimagejpeg(struct swfoutput*, char*filename, int sizex,int sizey, 
+int swfoutput_drawimagejpeg(struct swfoutput*, char*filename, int sizex,int sizey, 
        double x1,double y1,
        double x2,double y2,
        double x3,double y3,
        double x4,double y4);
-void swfoutput_drawimagelossless(struct swfoutput*, RGBA*pic, int sizex, int sizey,
+int swfoutput_drawimagelossless(struct swfoutput*, RGBA*pic, int sizex, int sizey,
        double x1,double y1,
        double x2,double y2,
        double x3,double y3,
        double x4,double y4);
-void swfoutput_drawimagelossless256(struct swfoutput*, U8*pic,RGBA*pal, int sizex, int sizey,
+int swfoutput_drawimagelossless256(struct swfoutput*, U8*pic,RGBA*pal, int sizex, int sizey,
+       double x1,double y1,
+       double x2,double y2,
+       double x3,double y3,
+       double x4,double y4);
+void swfoutput_drawimageagain(struct swfoutput*, int id, int sizex, int sizey,
        double x1,double y1,
        double x2,double y2,
        double x3,double y3,