From f1bef2ebf0efbf7c7557612e21610cf6052953e4 Mon Sep 17 00:00:00 2001 From: kramm Date: Sat, 10 Sep 2005 12:31:55 +0000 Subject: [PATCH] new "linktarget" option --- pdf2swf/swfoutput.cc | 23 ++++++++++++++++++----- 1 file changed, 18 insertions(+), 5 deletions(-) diff --git a/pdf2swf/swfoutput.cc b/pdf2swf/swfoutput.cc index 569aef0..4abead9 100644 --- a/pdf2swf/swfoutput.cc +++ b/pdf2swf/swfoutput.cc @@ -88,6 +88,7 @@ typedef struct _swfoutput_internal int config_bboxvars; float config_minlinewidth; double config_caplinewidth; + char* config_linktarget; SWF* swf; @@ -225,6 +226,7 @@ static swfoutput_internal* init_internal_struct() i->config_bboxvars=0; i->config_minlinewidth=0.05; i->config_caplinewidth=1; + i->config_linktarget=0; return i; }; @@ -1240,6 +1242,11 @@ gfxresult_t* swf_finish(gfxdevice_t* dev) swfoutput_internal*i = (swfoutput_internal*)dev->internal; gfxresult_t*result; + if(i->config_linktarget) { + free(i->config_linktarget); + i->config_linktarget = 0; + } + swfoutput_finalize(dev); SWF* swf = i->swf;i->swf = 0; swfoutput_destroy(dev); @@ -1365,11 +1372,15 @@ void swfoutput_linktourl(gfxdevice_t*dev, char*url, gfxline_t*points) endshape(dev); if(i->textid>=0) endtext(dev); - - if(!i->config_opennewwindow) - actions = action_GetUrl(0, url, "_parent"); - else - actions = action_GetUrl(0, url, "_this"); + + if(!i->config_linktarget) { + if(!i->config_opennewwindow) + actions = action_GetUrl(0, url, "_parent"); + else + actions = action_GetUrl(0, url, "_this"); + } else { + actions = action_GetUrl(0, url, i->config_linktarget); + } actions = action_End(actions); drawlink(dev, actions, 0, points,0); @@ -1673,6 +1684,8 @@ int swf_setparameter(gfxdevice_t*dev, const char*name, const char*value) i->config_minlinewidth = atof(value); } else if(!strcmp(name, "caplinewidth")) { i->config_caplinewidth = atof(value); + } else if(!strcmp(name, "linktarget")) { + i->config_linktarget = strdup(value); } else if(!strcmp(name, "dumpfonts")) { i->config_dumpfonts = atoi(value); } else if(!strcmp(name, "next_bitmap_is_jpeg")) { -- 1.7.10.4