added install target
[swftools.git] / pdf2swf / pdf2swf.cc
index a99e176..20f9348 100644 (file)
@@ -66,6 +66,16 @@ int args_callback_option(char*name,char*val) {
        pdfswf_ignoredraworder();
        return 0;
     }
+    else if (!strcmp(name, "n"))
+    {
+       pdfswf_linksopennewwindow();
+       return 0;
+    }
+    else if (!strcmp(name, "f"))
+    {
+       pdfswf_storeallcharacters();
+       return 0;
+    }
     else if (name[0]=='j')
     {
        if(name[1]) {
@@ -96,6 +106,8 @@ struct options_t options[] =
  {"s","shapes"},
  {"j","jpegquality"},
  {"p","pages"},
+ {"w","samewindow"},
+ {"f","fonts"},
  {0,0}
 };
 
@@ -128,6 +140,8 @@ void args_callback_usage(char*name)
     printf("-i  --ignore               Ignore draw order (makes the SWF file smaller)\n");
     printf("-j  --jpegquality=quality  Set quality of embedded jpeg pictures (default:85)\n");
     printf("-v  --verbose              Be verbose. Use more than one -v for greater effect\n");
+    printf("-w  --samewindow           Don't open a new Browser Window for Links in the SWF\n");
+    printf("-f  --fonts                Store full fonts in SWF. (Don't reduce to used characters)\n");
     printf("-V  --version              Print program version\n");
 }
 
@@ -211,6 +225,11 @@ int main(int argn, char *argv[])
     srand48(time(0));
     processargs(argn, argv);
     initLog(0,-1,0,0,-1,loglevel);
+    if(!outputname)
+    {
+       fprintf(stderr, "Please use -o to specify an output file\n");
+       exit(1);
+    }
 
     // test if the page range is o.k.
     is_in_range(0x7fffffff, pagerange);
@@ -248,6 +267,7 @@ int main(int argn, char *argv[])
        if(is_in_range(t, pagerange))
        pdfswf_convertpage(t);
     }
+    pdfswf_performconversion();
 
     pdfswf_close();
     return 0;