X-Git-Url: http://git.asbjorn.biz/?a=blobdiff_plain;f=pdf2swf%2FSWFOutputDev.cc;h=770af0c24d0689c28e5a96de2e0915bb89809595;hb=7aa6239f42b65e0cd200e251fc2c59037589e7a0;hp=c4d4be4dfe5109f6a11f9f33e0c109ef5c2629ce;hpb=889a37bd64170bee7fa7a75e47d18ab2ca058976;p=swftools.git diff --git a/pdf2swf/SWFOutputDev.cc b/pdf2swf/SWFOutputDev.cc index c4d4be4..770af0c 100644 --- a/pdf2swf/SWFOutputDev.cc +++ b/pdf2swf/SWFOutputDev.cc @@ -88,6 +88,7 @@ static int pagepos = 0; /* config */ static double caplinewidth = 3.0; static int zoom = 72; /* xpdf: 86 */ +static int forceType0Fonts = 0; static void printInfoString(Dict *infoDict, char *key, char *fmt); static void printInfoDate(Dict *infoDict, char *key, char *fmt); @@ -355,7 +356,7 @@ void SWFOutputDev::setClip(int x1,int y1,int x2,int y2) } void SWFOutputDev::getDimensions(int*x1,int*y1,int*x2,int*y2) { - return swfoutput_getdimensions(&output, x1,y2,x2,y2); + return swfoutput_getdimensions(&output, x1,y1,x2,y2); } static char*getFontID(GfxFont*font) @@ -1448,6 +1449,10 @@ char* SWFOutputDev::substituteFont(GfxFont*gfxFont, char* oldname) fontname = "Times-Roman"; } filename = searchFont(fontname); + if(!filename) { + msg(" Couldn't find font %s- did you install the default fonts?"); + return 0; + } if(substitutepos>=sizeof(substitutesource)/sizeof(char*)) { msg(" Too many fonts in file."); @@ -1547,7 +1552,7 @@ void SWFOutputDev::updateFont(GfxState *state) if(embedded && (gfxFont->getType() == fontType1 || gfxFont->getType() == fontType1C || - //gfxFont->getType() == fontCIDType0C || + (gfxFont->getType() == fontCIDType0C && forceType0Fonts) || gfxFont->getType() == fontTrueType || gfxFont->getType() == fontCIDType2 )) @@ -1959,6 +1964,8 @@ void pdfswf_setparameter(char*name, char*value) caplinewidth = atof(value); } else if(!strcmp(name, "zoom")) { zoom = atoi(value); + } else if(!strcmp(name, "forceType0Fonts")) { + forceType0Fonts = atoi(value); } else if(!strcmp(name, "fontdir")) { pdfswf_addfontdir(value); } else if(!strcmp(name, "languagedir")) { @@ -2237,7 +2244,7 @@ int swf_output_save(swf_output_t*swf, char*filename) return ret; } -void* swf_output_get(swf_output_t*swf, char*filename) +void* swf_output_get(swf_output_t*swf) { swf_output_internal_t*i= (swf_output_internal_t*)swf->internal; void* ret = i->outputDev->getSWF();