diff options
-rw-r--r-- | ChangeLog | 8 | ||||
-rw-r--r-- | poppler/Gfx.cc | 14 | ||||
-rw-r--r-- | poppler/OutputDev.cc | 16 | ||||
-rw-r--r-- | poppler/OutputDev.h | 10 |
4 files changed, 48 insertions, 0 deletions
@@ -1,5 +1,13 @@ 2006-02-04 Jeff Muizelaar <jeff@infidigm.net> + * poppler/Gfx.cc: + * poppler/OutputDev.cc: + * poppler/OutputDev.h: Let output devices know about pdf grouping + operators. + Patch by Thorkild Stray. + +2006-02-04 Jeff Muizelaar <jeff@infidigm.net> + * poppler/GlobalParams.cc: Check all fonts returned by fontconfig. Discard the ones that are not truetype or type1. Fixes #5758. Patch by Ed Catmur. diff --git a/poppler/Gfx.cc b/poppler/Gfx.cc index 7005b4aa..feda2e46 100644 --- a/poppler/Gfx.cc +++ b/poppler/Gfx.cc @@ -3591,9 +3591,16 @@ void Gfx::opBeginMarkedContent(Object args[], int numArgs) { printf("\n"); fflush(stdout); } + + if(numArgs == 2) { + out->beginMarkedContent(args[0].getName(),args[1].getDict()); + } else { + out->beginMarkedContent(args[0].getName()); + } } void Gfx::opEndMarkedContent(Object args[], int numArgs) { + out->endMarkedContent(); } void Gfx::opMarkPoint(Object args[], int numArgs) { @@ -3604,6 +3611,13 @@ void Gfx::opMarkPoint(Object args[], int numArgs) { printf("\n"); fflush(stdout); } + + if(numArgs == 2) { + out->markPoint(args[0].getName(),args[1].getDict()); + } else { + out->markPoint(args[0].getName()); + } + } //------------------------------------------------------------------------ diff --git a/poppler/OutputDev.cc b/poppler/OutputDev.cc index 2fecd9d9..282588b2 100644 --- a/poppler/OutputDev.cc +++ b/poppler/OutputDev.cc @@ -121,6 +121,22 @@ void OutputDev::drawSoftMaskedImage(GfxState *state, Object *ref, Stream *str, drawImage(state, ref, str, width, height, colorMap, NULL, gFalse); } +void OutputDev::endMarkedContent() { +} + +void OutputDev::beginMarkedContent(char *name) { +} + +void OutputDev::beginMarkedContent(char *name, Dict *properties) { +} + +void OutputDev::markPoint(char *name) { +} + +void OutputDev::markPoint(char *name, Dict *properties) { +} + + #if OPI_SUPPORT void OutputDev::opiBegin(GfxState *state, Dict *opiDict) { } diff --git a/poppler/OutputDev.h b/poppler/OutputDev.h index d07e03fb..b51b7c1f 100644 --- a/poppler/OutputDev.h +++ b/poppler/OutputDev.h @@ -183,6 +183,16 @@ public: int maskWidth, int maskHeight, GfxImageColorMap *maskColorMap); + //----- grouping operators + + virtual void endMarkedContent(); + virtual void beginMarkedContent(char *name); + virtual void beginMarkedContent(char *name, Dict *properties); + virtual void markPoint(char *name); + virtual void markPoint(char *name, Dict *properties); + + + #if OPI_SUPPORT //----- OPI functions virtual void opiBegin(GfxState *state, Dict *opiDict); |