X-Git-Url: http://git.asbjorn.biz/?a=blobdiff_plain;f=lib%2Fpdf%2FGFXOutputDev.h;h=5f92ccb41ab5afb20bc025fdc05bcba9a44485a8;hb=ccf121bf7dc70517dad86f20d11592416ed9d7d9;hp=0d8d4cfd027a33aa6a33a7ca4c3be00efd68d459;hpb=010a89e2887299503b1e8dfb08417e38ac7bc98e;p=swftools.git diff --git a/lib/pdf/GFXOutputDev.h b/lib/pdf/GFXOutputDev.h index 0d8d4cf..5f92ccb 100644 --- a/lib/pdf/GFXOutputDev.h +++ b/lib/pdf/GFXOutputDev.h @@ -4,6 +4,7 @@ #include "../gfxdevice.h" #include "../gfxsource.h" +#include "config.h" #include "InfoOutputDev.h" #include "PDFDoc.h" @@ -20,7 +21,9 @@ class GFXOutputState { int textRender; char createsoftmask; char transparencygroup; - int softmask; + char softmask; + char softmask_alpha; + char isolated; GFXOutputState(); @@ -54,6 +57,7 @@ public: void setMove(int x,int y); void setClip(int x1,int y1,int x2,int y2); + void setParameter(char*key, char*value); void setInfo(InfoOutputDev*info) {this->info = info;} @@ -120,6 +124,7 @@ public: //----- path clipping virtual void clip(GfxState *state) ; virtual void eoClip(GfxState *state) ; + virtual void clipToStrokePath(GfxState *state); //----- shaded fills virtual GBool useTilingPatternFill(); @@ -166,7 +171,6 @@ public: GfxImageColorMap *maskColorMap); //----- transparency groups and soft masks (xpdf >= ~ 3.01.16) -#if xpdfUpdateVersion >= 16 virtual void beginTransparencyGroup(GfxState *state, double *bbox, GfxColorSpace *blendingColorSpace, GBool isolated, GBool knockout, @@ -175,9 +179,6 @@ public: virtual void paintTransparencyGroup(GfxState *state, double *bbox); virtual void setSoftMask(GfxState *state, double *bbox, GBool alpha, Function *transferFunc, GfxColor *backdropColor); virtual void clearSoftMask(GfxState *state); -#else - virtual void clearSoftMask(GfxState *state) {}; -#endif //----- type 3 chars virtual GBool beginType3Char(GfxState *state, double x, double y, double dx, double dy, CharCode code, Unicode *u, int uLen); @@ -198,7 +199,7 @@ public: GBool inlineImg, int mask, int *maskColors, Stream *maskStr, int maskWidth, int maskHeight, GBool maskInvert, GfxImageColorMap*maskColorMap); int setGfxFont(char*id, char*name, char*filename, double quality); - void strokeGfxline(GfxState *state, gfxline_t*line); + void strokeGfxline(GfxState *state, gfxline_t*line, int flags); void clipToGfxLine(GfxState *state, gfxline_t*line); void fillGfxLine(GfxState *state, gfxline_t*line); @@ -207,6 +208,8 @@ public: void infofeature(char*feature); char outer_clip_box; //whether the page clip box is still on + + GBool do_interpretType3Chars; InfoOutputDev*info; GFXOutputState states[64];