X-Git-Url: http://git.asbjorn.biz/?a=blobdiff_plain;f=pdf2swf%2Fswfoutput.h;h=58f1490157d84af39c114694c7cc6d02de95bb04;hb=ef496df11f68c372d0888f102d53da008ce81f7c;hp=2b1e742a5b0a9b7224f7eb30a80f5c85e8dc3c11;hpb=e795670a7843a35bd56065c9c6bd8405f4b18566;p=swftools.git diff --git a/pdf2swf/swfoutput.h b/pdf2swf/swfoutput.h index 2b1e742..58f1490 100644 --- a/pdf2swf/swfoutput.h +++ b/pdf2swf/swfoutput.h @@ -3,17 +3,27 @@ Part of the swftools package. - Copyright (c) 2001 Matthias Kramm - - This file is distributed under the GPL, see file COPYING for details */ + Copyright (c) 2001,2002,2003 Matthias Kramm + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ #ifndef __swfoutput_h__ #define __swfoutput_h__ -#include -extern "C" { #include "../lib/rfxswf.h" -} +#include "../lib/gfxdevice.h" typedef long int twip; @@ -26,32 +36,16 @@ 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; + MATRIX fontmatrix; double fontm11,fontm12,fontm21,fontm22; - unsigned short int linewidth; - SWFFont*font; + SWFFONT *swffont; RGBA strokergb; RGBA fillrgb; + int drawmode; + int x1,y1,x2,y2; + void*internal; }; #define DRAWMODE_STROKE 1 @@ -60,28 +54,41 @@ struct swfoutput #define DRAWMODE_CLIP 4 #define DRAWMODE_EOCLIP 5 -void swfoutput_init(struct swfoutput*, char*filename, int sizex, int sizey); -void swfoutput_setprotected(); //write PROTECT tag +void swfoutput_setparameter(char*name, char*value); -void swfoutput_newpage(struct swfoutput*); +void swfoutput_init(struct swfoutput*); +int swfoutput_save(struct swfoutput*, char*filename); +SWF* swfoutput_get(struct swfoutput*); +void swfoutput_getdimensions(struct swfoutput*, int*x1, int*y1, int*x2, int*y2); + +void swfoutput_pagefeed(struct swfoutput*obj); +void swfoutput_newpage(struct swfoutput*, int pageNum, int movex, int movey, int x1, int y1, int x2, int y2); -void swfoutput_setfont(struct swfoutput*, char*fontid, int t1font, char*filename); +void swfoutput_setfont(struct swfoutput*, char*fontid, 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); +int getCharID(SWFFONT *font, int charnr, char *charname, int u); void swfoutput_setfontmatrix(struct swfoutput*,double,double,double,double); -void swfoutput_setlinewidth(struct swfoutput*, double linewidth); +int swfoutput_drawchar(struct swfoutput*,double x,double y,char*a, int charnr, int u, gfxcolor_t* col); -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_drawgfxline(struct swfoutput*, gfxline_t*line, gfxcoord_t width, gfxcolor_t*col, gfx_capType cap_style, gfx_joinType joint_style, gfxcoord_t miterLimit); +void swfoutput_fillgfxline(struct swfoutput*, gfxline_t*line, gfxcolor_t*col); +void swfoutput_startclip(struct swfoutput*, gfxline_t*line); void swfoutput_endclip(struct swfoutput*); -void swfoutput_drawimagefile(struct swfoutput*, char*filename, int sizex,int sizey, + +void swfoutput_drawimagejpeg(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_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_linktopage(struct swfoutput*, int page, swfcoord*points); +void swfoutput_linktourl(struct swfoutput*, char*url, swfcoord*points); +void swfoutput_namedlink(struct swfoutput*obj, char*name, swfcoord*points); void swfoutput_destroy(struct swfoutput*);