#include "../gfxdevice.h"
#include "../gfxsource.h"
+#include "config.h"
#include "InfoOutputDev.h"
#include "PDFDoc.h"
int textRender;
char createsoftmask;
char transparencygroup;
- int softmask;
+ char softmask;
+ char softmask_alpha;
+ char isolated;
GFXOutputState();
struct _parameter*next;
} parameter_t;
-void addGlobalFont(char*filename);
-void addGlobalLanguageDir(char*dir);
-void addGlobalFontDir(char*dirname);
+void addGlobalFont(const char*filename);
+void addGlobalLanguageDir(const char*dir);
+void addGlobalFontDir(const char*dirname);
class GFXOutputDev: public OutputDev {
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;}
//----- path clipping
virtual void clip(GfxState *state) ;
virtual void eoClip(GfxState *state) ;
+ virtual void clipToStrokePath(GfxState *state);
//----- shaded fills
virtual GBool useTilingPatternFill();
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,
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);
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);
+ void showfeature(const char*feature,char fully, char warn);
+ void warnfeature(const char*feature,char fully);
+ void infofeature(const char*feature);
+
char outer_clip_box; //whether the page clip box is still on
+
+ GBool do_interpretType3Chars;
InfoOutputDev*info;
GFXOutputState states[64];
PDFDoc*doc;
XRef*xref;
- char* searchFont(char*name);
+ char* searchFont(const char*name);
char* substituteFont(GfxFont*gfxFont, char*oldname);
char* writeEmbeddedFontToFile(XRef*ref, GfxFont*font);
int t1id;
char type3Warning;
- char* substitutetarget[256];
- char* substitutesource[256];
+ const char* substitutetarget[256];
+ const char* substitutesource[256];
int substitutepos;
int user_movex,user_movey;
int pagepos;
/* config */
- int forceType0Fonts;
int config_use_fontconfig;
+ int config_break_on_warning;
parameter_t*parameters;
};