Font characters are now addressed by full name, not charcode
[swftools.git] / pdf2swf / swfoutput.h
index 9792fd2..2b1e742 100644 (file)
@@ -26,11 +26,30 @@ struct swfcoord {
     twip y;
 };
 
+class SWFFont
+{
+    T1_OUTLINE**outline;
+    char**charname;
+    char*name;
+    int charnum;
+
+    public:
+    
+    int t1id;
+    char*fontid;
+
+    SWFFont(char*name, int t1id, char*filename);
+    T1_OUTLINE*getOutline(char*charname);
+    char*getName();
+    char*getCharName(int t);
+};
+
 struct swfoutput 
 {
-    int t1font;
+    //int t1font;
     double fontm11,fontm12,fontm21,fontm22;
     unsigned short int linewidth;
+    SWFFont*font;
     RGBA strokergb;
     RGBA fillrgb;
 };
@@ -46,14 +65,15 @@ void swfoutput_setprotected(); //write PROTECT tag
 
 void swfoutput_newpage(struct swfoutput*);
 
- int swfoutput_setfont(struct swfoutput*, int t1font);
+void swfoutput_setfont(struct swfoutput*, char*fontid, int t1font, char*filename);
+int swfoutput_queryfont(struct swfoutput*, char*fontid);
 void swfoutput_setdrawmode(struct swfoutput*, int drawmode);
 void swfoutput_setfillcolor(struct swfoutput*, unsigned char r, unsigned char g, unsigned char b, unsigned char a);
 void swfoutput_setstrokecolor(struct swfoutput*, unsigned char r, unsigned char g, unsigned char b, unsigned char a);
 void swfoutput_setfontmatrix(struct swfoutput*,double,double,double,double);
 void swfoutput_setlinewidth(struct swfoutput*, double linewidth);
 
-void swfoutput_drawchar(struct swfoutput*,double x,double y,char a);
+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*);