[poppler] poppler/PreScanOutputDev.cc poppler/PreScanOutputDev.h

Albert Astals Cid aacid at kemper.freedesktop.org
Fri Dec 10 04:06:46 PST 2010


 poppler/PreScanOutputDev.cc |   14 +++++++++++++-
 poppler/PreScanOutputDev.h  |    4 ++++
 2 files changed, 17 insertions(+), 1 deletion(-)

New commits:
commit 9b45fa072198da4a5032004ac943cf2227aa97ea
Author: Albert Astals Cid <aacid at kde.org>
Date:   Fri Dec 10 12:05:58 2010 +0000

    Make PreScanOutputDev be less agressive when deciding to rasterize
    
    BUG 30107

diff --git a/poppler/PreScanOutputDev.cc b/poppler/PreScanOutputDev.cc
index 7c3f522..5e6d5a7 100644
--- a/poppler/PreScanOutputDev.cc
+++ b/poppler/PreScanOutputDev.cc
@@ -14,6 +14,7 @@
 // under GPL version 2 or later
 //
 // Copyright (C) 2009 Carlos Garcia Campos <carlosgc at gnome.org>
+// Copyright (C) 2010 Albert Astals Cid <aacid at kde.org>
 //
 // To see a description of the changes please see the Changelog file that
 // came with your tarball or type make ChangeLog if you are building from git
@@ -235,10 +236,21 @@ void PreScanOutputDev::beginTransparencyGroup(
 			   GfxColorSpace * /*blendingColorSpace*/,
 			   GBool /*isolated*/, GBool /*knockout*/,
 			   GBool /*forSoftMask*/) {
-  transparency = gTrue;
   gdi = gFalse;
 }
 
+void PreScanOutputDev::paintTransparencyGroup(GfxState *state, double * /*bbox*/)
+{
+  check(state->getFillColorSpace(), state->getFillColor(),
+        state->getFillOpacity(), state->getBlendMode());
+}
+
+void PreScanOutputDev::setSoftMask(GfxState * /*state*/, double * /*bbox*/, GBool /*alpha*/,
+			   Function * /*transferFunc*/, GfxColor * /*backdropColor*/)
+{
+  transparency = gTrue;
+}
+
 void PreScanOutputDev::check(GfxColorSpace *colorSpace, GfxColor *color,
 			     double opacity, GfxBlendMode blendMode) {
   GfxRGB rgb;
diff --git a/poppler/PreScanOutputDev.h b/poppler/PreScanOutputDev.h
index 39c7819..6af7a1e 100644
--- a/poppler/PreScanOutputDev.h
+++ b/poppler/PreScanOutputDev.h
@@ -14,6 +14,7 @@
 // under GPL version 2 or later
 //
 // Copyright (C) 2009 Carlos Garcia Campos <carlosgc at gnome.org>
+// Copyright (C) 2010 Albert Astals Cid <aacid at kde.org>
 //
 // To see a description of the changes please see the Changelog file that
 // came with your tarball or type make ChangeLog if you are building from git
@@ -109,6 +110,9 @@ public:
 				      GfxColorSpace *blendingColorSpace,
 				      GBool isolated, GBool knockout,
 				      GBool forSoftMask);
+	virtual void paintTransparencyGroup(GfxState *state, double *bbox);
+	virtual void setSoftMask(GfxState *state, double *bbox, GBool alpha,
+			   Function *transferFunc, GfxColor *backdropColor);
 
   //----- special access
 


More information about the poppler mailing list