X-Git-Url: http://git.asbjorn.biz/?p=swftools.git;a=blobdiff_plain;f=lib%2Fpdf%2FBitmapOutputDev.h;h=42b5071730f833a0a6342dc28a9e26ee1599421a;hp=23df08d3c74508e51a0d5f2843182cb54e2f121e;hb=18507d7cb3535fdfd333c0e33cf5db8bd5d6e40a;hpb=619c598195de4fc32af95d6b6608ba00f91b5dfc diff --git a/lib/pdf/BitmapOutputDev.h b/lib/pdf/BitmapOutputDev.h index 23df08d..42b5071 100644 --- a/lib/pdf/BitmapOutputDev.h +++ b/lib/pdf/BitmapOutputDev.h @@ -38,6 +38,10 @@ struct ClipState ClipState(); }; +#define STATE_PARALLEL 0 +#define STATE_TEXT_IS_ABOVE 1 +#define STATE_BITMAP_IS_ABOVE 2 + class BitmapOutputDev: public CommonOutputDev { public: BitmapOutputDev(InfoOutputDev*info, PDFDoc*doc); @@ -123,7 +127,6 @@ public: virtual GBool axialShadedFill(GfxState *state, GfxAxialShading *shading); virtual GBool radialShadedFill(GfxState *state, GfxRadialShading *shading); - void doClip(GfxState *state, GBool eo); virtual void clip(GfxState *state); virtual void eoClip(GfxState *state); virtual void clipToStrokePath(GfxState *state); @@ -179,13 +182,24 @@ public: virtual void setVectorAntialias(GBool vaa); virtual GBool getVectorAntialias(); + private: - void flush(); + void clearClips(); + void clearBoolPolyDev(); + void clearBoolTextDev(); + void flushText(); + void flushBitmap(); + void checkNewText(); + void checkNewBitmap(); + GBool clip0and1differ(); + GBool intersection(); char config_bitmapfonts; char config_extrafontdata; + int layerstate; + SplashPath*bboxpath; PDFDoc*doc; @@ -193,6 +207,10 @@ private: SplashOutputDev*rgbdev; SplashOutputDev*clip0dev; SplashOutputDev*clip1dev; + SplashOutputDev*boolpolydev; + SplashOutputDev*booltextdev; + + gfxdevice_t* gfxoutput; GFXOutputDev*gfxdev; InfoOutputDev*info; gfxdevice_t*dev;