diff -U 3 -H -d -r -N -x '.*' -- Entwicklung/poppler-0.19.4/poppler/Gfx.cc Downloads/poppler-0.19.4/poppler/Gfx.cc
--- Entwicklung/poppler-0.19.4/poppler/Gfx.cc	2012-04-24 19:10:58.000000000 +0200
+++ Downloads/poppler-0.19.4/poppler/Gfx.cc	2012-04-27 21:21:38.000000000 +0200
@@ -4969,6 +4969,7 @@
       if ( res->lookupMarkedContentNF( name1, &markedContent ) ) {
         bool visible = contentConfig->optContentIsVisible(&markedContent);
         mc->ocSuppressed = !(visible);
+		out->beginMarkedContent(args[0].getName(), &markedContent);
       } else {
 	error(errSyntaxError, getPos(), "DID NOT find {0:s}", name1);
       }
@@ -4993,6 +4994,10 @@
     printf("\n");
     fflush(stdout);
   }
+
+  if(numArgs == 2 && args[1].isDict()) {
+    out->beginMarkedContent(args[0].getName(),args[1].getDict());
+  }
   ocState = !contentIsHidden();
 }
 
@@ -5010,6 +5015,7 @@
 
   if (mcKind == gfxMCActualText)
     out->endActualText(state);
+  out->endMarkedContent(state);
   ocState = !contentIsHidden();
 }
 
diff -U 3 -H -d -r -N -x '.*' -- Entwicklung/poppler-0.19.4/poppler/OutputDev.cc Downloads/poppler-0.19.4/poppler/OutputDev.cc
--- Entwicklung/poppler-0.19.4/poppler/OutputDev.cc	2012-04-25 18:48:12.000000000 +0200
+++ Downloads/poppler-0.19.4/poppler/OutputDev.cc	2012-04-27 21:20:09.000000000 +0200
@@ -157,6 +157,15 @@
   drawImage(state, ref, str, width, height, colorMap, interpolate, NULL, gFalse);
 }
 
+void OutputDev::endMarkedContent(GfxState *state) {
+}
+
+void OutputDev::beginMarkedContent(char *name, Dict *properties) {
+}
+
+void OutputDev::beginMarkedContent(char *name, Object *dictRef ) {
+}
+
 void OutputDev::markPoint(char *name) {
 }
 
diff -U 3 -H -d -r -N -x '.*' -- Entwicklung/poppler-0.19.4/poppler/OutputDev.h Downloads/poppler-0.19.4/poppler/OutputDev.h
--- Entwicklung/poppler-0.19.4/poppler/OutputDev.h	2012-04-25 18:47:59.000000000 +0200
+++ Downloads/poppler-0.19.4/poppler/OutputDev.h	2012-04-27 21:20:21.000000000 +0200
@@ -272,6 +272,9 @@
 
   //----- grouping operators
 
+  virtual void endMarkedContent(GfxState *state);
+  virtual void beginMarkedContent(char *name, Dict *properties);
+  virtual void beginMarkedContent(char *name, Object *dictRef );
   virtual void markPoint(char *name);
   virtual void markPoint(char *name, Dict *properties);
 
