+ printf("-T --flashversion=num Set the flash version in the header to num (default: 4)\n");
+ printf("-s caplinewidth=value Set the minimum line width to trigger cap style handling to value. (3)\n");
+ printf("-s splinequality=value Set the quality of spline convertion to value (0-100, default: 100).\n");
+ printf("-s fontquality=value Set the quality of font convertion to value (0-100, default: 100).\n");
+ printf("-s ignoredraworder Ignore draw order (makes the SWF file smaller, but may produce\n"
+ " graphic errors)\n");
+ printf("Postprocessing options:\n");
+#ifndef SYSTEM_BACKTICKS
+ printf("(They might not work because your system call doesn't support command substitution)\n");
+#endif
+ printf("-b --defaultviewer Link default viewer to the pdf (%s/swfs/default_viewer.swf)\n", SWFTOOLS_DATADIR);
+ printf("-l --defaultpreloader Link default preloader the pdf (%s/swfs/default_loader.swf)\n", SWFTOOLS_DATADIR);
+ printf("-B --viewer=filename Link viewer \"name\" to the pdf (\"%s -B\" for list)\n", name);
+ printf("-L --preloader=filename Link preloader \"name\" to the pdf (\"%s -L\" for list)\n",name);
+}
+
+#ifdef HAVE_DIRENT_H
+void addfontdir(FILE*database, char* dirname, int*numfonts, char*searchpath)
+{
+ if(searchpath) {
+ if(searchpath[0])
+ strcat(searchpath, ":");
+ strcat(searchpath, dirname);
+ }
+ msg("<verbose> Adding %s to search path\n", dirname);
+
+ DIR*dir = opendir(dirname);
+ if(!dir) {
+ msg("<warning> Couldn't open directory %s\n", dirname);
+ return;
+ }
+ dirent*ent;
+ while(1) {
+ ent = readdir (dir);
+ if (!ent)
+ break;
+ int l;
+ char*name = ent->d_name;
+ char type = 0;
+ if(!name) continue;
+ l=strlen(name);
+ if(l<4)
+ continue;
+ if(!strncasecmp(&name[l-4], ".afm", 4))
+ type=1;
+ if(!strncasecmp(&name[l-4], ".ttf", 4))
+ type=2;
+ if(type)
+ {
+ if(database && type==1) {
+ char buf[256],a;
+ FILE*fi;
+ sprintf(buf, "%s/%s", dirname,name);
+ fi = fopen(buf, "rb");
+ if(!fi || !fread(&a,1,1,fi)) {
+ msg("<warning> Couldn't read from %s", buf);
+ }
+ fprintf(database, "%s\n", buf);
+ msg("<verbose> Found font %s\n", buf);
+ fclose(fi);
+ }
+ if(numfonts)
+ (*numfonts)++;
+ }
+ }
+ closedir(dir);
+}
+#endif
+
+char* stripfilename(char*filename, char*newext)
+{
+ char*last1 = strrchr(filename, '/');
+ char*last2 = strrchr(filename, '\\');
+ char*pos = filename;
+ char*name;
+ char*dot;
+ if(last1>pos) pos = last1 + 1;
+ if(last2>pos) pos = last2 + 1;
+ name = (char*)malloc(strlen(pos)+5);
+ strcpy(name, pos);
+ dot = strrchr(name, '.');
+ if(dot) {
+ *dot = 0;
+ }
+ strcat(name, newext);
+ return name;