added a small optimization to swf_ImageGetNumberOfPaletteEntries().
[swftools.git] / FAQ
1 1.) What's the cost of swftools?
2
3     SWFTools is free of charge, and is released under the GPL
4     (http://www.gnu.org/licenses/gpl.html).
5
6 2.) How to compile/link swftools on Unix/Linux/BSD?
7
8     Download swftools-0.x.x.tar.gz. Then type, on the
9     command-line:
10
11     tar -zvxf swftools-0.x.x.tar
12     cd swftools-0.x.x
13     ./configure
14     make 
15     make install
16
17     (you will have to be root for the last step)
18
19 3.) What libraries do I need to compile swftools on Unix/Linux/BSD?
20
21     You need t1lib, freetype and jpeglib to compile pdf2swf.
22     Links:
23         freetype:
24          http://www.freetype.org
25         t1lib: 
26          ftp://sunsite.unc.edu/pub/linux/libs/graphics/t1lib-1.3.1.tar.gz
27         t1lib (mirrored here): 
28          http://www.quiss.org/swftools/t1lib-1.3.1.tar.gz
29         jpeglib: 
30          http://www.ijg.org/files/jpegsrc.v6b.tar.gz
31
32     Furthermore, if you want to compile avi2swf, you need the avifile library:
33         http://avifile.sourceforge.net
34     .
35
36 4.) when compiling the sourcecode version, configure doesn't find my jpeglib / my t1lib!
37
38     In case some of your libraries/include files are installed in /usr/local,
39     try the following:
40
41     rm -f config.cache
42     LDFLAGS="-L/usr/local/lib" CPPFLAGS="-I/usr/local/include" ./configure
43
44     Furthermore, a new installation of jpeglib (the following assumes it's in
45     /usr/local/lib) often requires doing a
46
47     ranlib /usr/local/lib/libjpeg.a
48     ldconfig /usr/local/lib
49
50     If it still doesn't work, try removing the file "config.cache"
51     before running configure again.
52
53 5.) There are problems during compilation:
54     Error messages complain about "undefined reference to `operator new(unsigned)'"
55     as well as "undefined reference to `__gxx_personality_v0'".
56
57     Try running configure as
58
59     LDFLAGS=-lstdc++ ./configure
60
61 6.) How do I compile swftools on Mac OS X?
62
63     You need to get fink (http://fink.sourceforge.net), and install it.
64     After this, you need to install all the required libs (jpeg, freetype, lame):
65    
66     fink install libjpeg libjpeg-shlibs freetype2 freetype2-shlibs lame lame-shlibs
67
68     Then, you have to inform configure of where they are:
69
70     LDFLAGS="-L/sw/lib" CPPFLAGS="-I/sw/include -I/sw/include/lame" ./configure
71     make
72     sudo make install
73
74     If this doesn't work, especially if you want to use the python library and
75     get weird exceptions, try to remove all versions of jpeglib, freetype and 
76     lame from /usr/lib and /usr/local/lib, and then run configure / make / make install
77     again.
78
79     If you also want to use the python interface, you may have to copy the
80     Imaging headers (Imaging.h, ImPlatform.h, ImConfig.h) to
81       /System/Library/Frameworks/Python.framework/Versions/2.3/include/python2.3/
82     before running configure.
83
84 7.) Is there a pdf2swf/avi2swf for Windows?
85
86     Windows versions of all SWF utilities are downloadable from
87         http://www.quiss.org/swftools/download.html
88     .
89     (There's a self-extracting .exe version of all versions since 0.6.1, 
90      and a .zip or .rar archive of the newest development snapshot)
91     Notice: For now, the utilities need to be installed to C:\SWFTOOLS to make pdf2swf work-
92     otherwise it won't be able to find its fonts.
93
94 8.) Where's the source code of the Windows version?
95
96     It's the same as the Unix source code. If you want to compile
97     under Windows, it's recommended that you get the CVS version
98     of the sources.
99     You need MingW (http://www.mingw.org) to compile it.
100     When cross-compiling under Linux, e.g. the following generates the Windows .exe files:
101
102     CXX=i386-mingw32msvc-g++ CPP=i386-mingw32msvc-cpp CC=i386-mingw32msvc-gcc \
103     ./configure --host=i586-mingw32msvc && make
104
105     For compiling on Windows itself, there's a HOWTO from Daichi Shinozaki:
106     http://lists.gnu.org/archive/html/swftools-common/2005-02/msg00023.html
107
108 9.) The fonts in the SWFs generated by pdf2swf are wrong!
109
110     Watch the output of pdf2swf closely.
111     You should see something like:
112
113       WARNING Font Myriad-Roman could not be loaded.
114       WARNING Try putting a TTF version of that font (named "Myriad-Roman.ttf") into /swftools/fonts
115
116     Provided you actually own the font in question (here: Myriad-Roman.ttf), 
117     you can copy that fonts into your current directory and pass 
118     the "-F ./" (--fontpath ./) option to pdf2swf. 
119     If you use a font in several PDFs, you can also simply copy it
120     to (on Windows) C:\SWFTools\Fonts\, or (on Unix) /usr/local/share/swftools/fonts 
121     to make it work all the time.
122
123 10.) Can png2swf handle transparency?
124
125     Yes. It supports PNG mode 2 transparency (256 color palettes with alpha) since version 0.4.2. 
126     Mode 6 (32 bit RGBA truecolor) is also supported since version 0.4.4.
127
128 11.) How to do Flash MX compression with SWFTools?
129
130     Most tools support the -z flag for outputting compressed SWF.
131     Furthermore you can compress/uncompress SWF files using swfcombine:
132
133         swfcombine -dz file.swf -o file_new.swf
134
135     compresses, while
136
137         swfcombine -d file.swf -o file_new.swf
138
139     decompresses.
140
141 12.) avi2swf converts my avi files upside down!
142
143     Try using the -p (--flip) switch.
144
145 13.) How to extract images/sounds from myfile.swf using swfextract?
146
147     First list all extractable items:
148
149         swfextract myfile.swf
150     
151     The result is something like:
152
153         Objects in file myfile.swf:
154          [-i] 3 Shapes: ID(s) 1-3
155          [-i] 5 MovieClips: ID(s) 4, 5, 8, 10, 12
156          [-j] 3 JPEGs: ID(s) 69, 116, 447
157          [-p] 1 PNG: ID(s) 318
158          [-s] 3 Sounds: ID(s) 28-30
159          [-f] 10 Frames: ID(s) 0-10
160
161     Now you can extract a shape using
162
163         swfextract -i 2 myfile.swf -o shape.swf
164
165     a sound using
166         
167         swfextract -s 28 myfile.swf -o sound.wav
168
169     a PNG image file using
170         
171         swfextract -p 318 myfile.swf -o file.png
172
173     etc.
174
175 14.) Is there a mailing list for SWFTools?
176
177     Yes there is. You can subscribe by going to
178     
179     http://mail.nongnu.org/mailman/listinfo/swftools-common
180
181 15.) Where can I donate?
182
183     You can donate via PayPal by clicking on the "donate" button
184     on http://www.quiss.org/swftools/index.html
185     .
186     Any financial support for this project is most welcome!
187