#endif
#include "../lib/args.h"
#include "SWFOutputDev.h"
-extern "C" {
#include "log.h"
-}
#ifndef WIN32
#define FONTDIR SWFTOOLS_DATADIR "/fonts"
}
else if (!strcmp(name, "S"))
{
- pdfswf_drawonlyshapes();
+ pdfswf_setparameter("drawonlyshapes", "1");
return 0;
}
else if (!strcmp(name, "i"))
{
- pdfswf_ignoredraworder();
+ pdfswf_setparameter("ignoredraworder", "1");
return 0;
}
else if (!strcmp(name, "z"))
{
- pdfswf_enablezlib();
+ pdfswf_setparameter("enablezlib", "1");
return 0;
}
else if (!strcmp(name, "n"))
{
- pdfswf_linksopennewwindow();
+ pdfswf_setparameter("opennewwindow", "1");
return 0;
}
else if (!strcmp(name, "t"))
{
- pdfswf_insertstop();
+ pdfswf_setparameter("insertstop", "1");
return 0;
}
else if (!strcmp(name, "T"))
{
- int i = atoi(val);
if(!strcasecmp(val, "mx"))
- i = 6;
- pdfswf_setversion(i);
+ pdfswf_setparameter("flashversion", "6");
+ else
+ pdfswf_setparameter("flashversion", val);
+
return 1;
}
else if (!strcmp(name, "f"))
{
- pdfswf_storeallcharacters();
+ pdfswf_setparameter("storeallcharacters", "1");
return 0;
}
else if (!strcmp(name, "F"))
else if (!strcmp(name, "j"))
{
if(name[1]) {
- pdfswf_jpegquality(atoi(&name[1]));
+ pdfswf_setparameter("jpegquality", &name[1]);
return 0;
} else {
- pdfswf_jpegquality(atoi(val));
+ pdfswf_setparameter("jpegquality", val);
return 1;
}
}
printf("-f --fonts Store full fonts in SWF. (Don't reduce to used characters)\n");
printf("-T --flashversion=num Set the flash version in the header to num (default: 4)\n");
printf("-s insertstop Insert a \"Stop\" Tag in every frame (don't turn pages automatically)\n");
- printf("-s zoom=factor Scale result, default: 100 (before 0.6.2: 72)\n");
+ printf("-s zoom=factor Scale result, default: 72\n");
printf("-s jpegquality=quality Set quality of embedded jpeg pictures (default:85)\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");
}
#ifdef HAVE_DIRENT_H
-void addfontdir(char* dirname, int*numfonts)
+static void addfontdir(char* dirname, int*numfonts)
{
if(!numfonts)
msg("<verbose> Adding %s to search path\n", dirname);
msg("<warning> Couldn't open directory %s\n", dirname);
return;
}
- dirent*ent;
+ struct dirent*ent;
while(1) {
ent = readdir (dir);
if (!ent)
}
#endif
-char* stripfilename(char*filename, char*newext)
+static char* stripfilename(char*filename, char*newext)
{
char*last1 = strrchr(filename, '/');
char*last2 = strrchr(filename, '\\');
msg("<error> Couldn't find any fonts!");
#endif
- pdfswf_init(filename, password);
- pdfswf_setoutputfilename(outputname);
+ pdf_doc_t* pdf = pdf_init(filename, password);
+ if(!pdf) {
+ msg("<error> Couldn't open %s", filename);
+ exit(1);
+ }
+ swf_output_t* swf = swf_output_init();
- int pages = pdfswf_numpages();
- for(t = 1; t <= pages; t++)
+ for(t = 1; t <= pdf->num_pages; t++)
{
- if(is_in_range(t, pagerange))
- pdfswf_convertpage(t);
+ if(is_in_range(t, pagerange)) {
+ /* for links: FIXME */
+ pdfswf_preparepage(t);
+ }
+ if(is_in_range(t, pagerange)) {
+ pdf_page_t*page = pdf_getpage(pdf, t);
+ pdf_page_render(page, swf);
+ pdf_page_destroy(page);
+ }
}
- pdfswf_performconversion();
+ swf_output_save(swf, outputname);
+ swf_output_destroy(swf);
- pdfswf_close();
+ pdf_destroy(pdf);
if(viewer || preloader) {
#ifndef SYSTEM_BACKTICKS
return 0;
}
-