X-Git-Url: http://git.asbjorn.biz/?p=swftools.git;a=blobdiff_plain;f=lib%2Fpdf%2FGFXOutputDev.cc;fp=lib%2Fpdf%2FGFXOutputDev.cc;h=13f70877cc5e3f2450fce79a1bdcb64a3cad2be7;hp=635d10d5c3c2f9d2e5ea4641bddbe7e980f8b900;hb=9e1987ca321def20b6f756bb5955d41c78c45c05;hpb=fc8854e5ed42dbcef96d25eb851b9873707a15ff diff --git a/lib/pdf/GFXOutputDev.cc b/lib/pdf/GFXOutputDev.cc index 635d10d..13f7087 100644 --- a/lib/pdf/GFXOutputDev.cc +++ b/lib/pdf/GFXOutputDev.cc @@ -105,6 +105,7 @@ struct fontentry { char*pfb; int pfblen; char*fullfilename; + DisplayFontParam *dfp; } pdf2t1map[] ={ {"Times-Roman", "n021003l", n021003l_afm, n021003l_afm_len, n021003l_pfb, n021003l_pfb_len}, {"Times-Italic", "n021023l", n021023l_afm, n021023l_afm_len, n021023l_pfb, n021023l_pfb_len}, @@ -564,10 +565,11 @@ DisplayFontParam *GFXGlobalParams::getDisplayFont(GString *fontName) } else { msg(" Storing standard PDF font %s at %s", name, pdf2t1map[t].fullfilename); } + DisplayFontParam *dfp = new DisplayFontParam(new GString(fontName), displayFontT1); + dfp->t1.fileName = new GString(pdf2t1map[t].fullfilename); + pdf2t1map[t].dfp = dfp; } - DisplayFontParam *dfp = new DisplayFontParam(new GString(fontName), displayFontT1); - dfp->t1.fileName = new GString(pdf2t1map[t].fullfilename); - return dfp; + return pdf2t1map[t].dfp; } } @@ -2752,7 +2754,7 @@ void GFXOutputDev::paintTransparencyGroup(GfxState *state, double *bbox) gfxdevice_t ops; dbg("this->device=%p, this->device->name=%s\n", this->device, this->device->name); gfxdevice_ops_init(&ops, this->device, alpha); - gfxresult_record_replay(grouprecording, &ops); + gfxresult_record_replay(grouprecording, &ops, 0); ops.finish(&ops); } grouprecording->destroy(grouprecording); @@ -2824,15 +2826,15 @@ void GFXOutputDev::clearSoftMask(GfxState *state) /* get outline of all objects below the soft mask */ gfxdevice_t uniondev; gfxdevice_union_init(&uniondev, 0); - gfxresult_record_replay(below, &uniondev); + gfxresult_record_replay(below, &uniondev, 0); gfxline_t*belowoutline = gfxdevice_union_getunion(&uniondev); uniondev.finish(&uniondev); gfxbbox_t bbox = gfxline_getbbox(belowoutline); gfxline_free(belowoutline);belowoutline=0; #if 0 this->device->startclip(this->device, belowoutline); - gfxresult_record_replay(below, this->device); - gfxresult_record_replay(mask, this->device); + gfxresult_record_replay(below, this->device, 0); + gfxresult_record_replay(mask, this->device, 0); this->device->endclip(this->device); #endif @@ -2847,7 +2849,7 @@ void GFXOutputDev::clearSoftMask(GfxState *state) } belowrender.setparameter(&belowrender, "antialize", "2"); belowrender.startpage(&belowrender, width, height); - gfxresult_record_replay(below, &belowrender); + gfxresult_record_replay(below, &belowrender, 0); belowrender.endpage(&belowrender); gfxresult_t* belowresult = belowrender.finish(&belowrender); gfximage_t* belowimg = (gfximage_t*)belowresult->get(belowresult,"page0"); @@ -2856,7 +2858,7 @@ void GFXOutputDev::clearSoftMask(GfxState *state) gfxdevice_t maskrender; gfxdevice_render_init(&maskrender); maskrender.startpage(&maskrender, width, height); - gfxresult_record_replay(mask, &maskrender); + gfxresult_record_replay(mask, &maskrender, 0); maskrender.endpage(&maskrender); gfxresult_t* maskresult = maskrender.finish(&maskrender); gfximage_t* maskimg = (gfximage_t*)maskresult->get(maskresult,"page0");