added (call to) useGradients().
authorkramm <kramm>
Mon, 27 Sep 2004 09:58:57 +0000 (09:58 +0000)
committerkramm <kramm>
Mon, 27 Sep 2004 09:58:57 +0000 (09:58 +0000)
pdf2swf/xpdf/Gfx.cc
pdf2swf/xpdf/OutputDev.h

index 4f9142c..e86d6b1 100644 (file)
@@ -1581,6 +1581,8 @@ void Gfx::doFunctionShFill1(GfxFunctionShading *shading,
   // center of the rectangle
   xM = 0.5 * (x0 + x1);
   yM = 0.5 * (y0 + y1);
+  
+  out->useGradients();
 
   // the four corner colors are close (or we hit the recursive limit)
   // -- fill the rectangle; but require at least one subdivision
@@ -1799,6 +1801,9 @@ void Gfx::doAxialShFill(GfxAxialShading *shading) {
   vy0 = ty + sMax * dx;
 
   i = 0;
+  if(i < axialMaxSplits)
+    out->useGradients();
+
   while (i < axialMaxSplits) {
 
     // bisect until color difference is small enough or we hit the
@@ -2009,6 +2014,9 @@ void Gfx::doRadialShFill(GfxRadialShading *shading) {
     shading->getColor(ta, &colorA);
   }
 
+  if(ia < radialMaxSplits)
+    out->useGradients();
+
   while (ia < radialMaxSplits) {
 
     // go as far along the t axis (toward t1) as we can, such that the
index c759770..464f16b 100644 (file)
@@ -48,6 +48,9 @@ public:
   // Does this device use drawChar() or drawString()?
   virtual GBool useDrawChar() = 0;
 
+  // Is this device able to draw gradients?
+  virtual GBool useGradients() = 0;
+
   // Does this device use beginType3Char/endType3Char?  Otherwise,
   // text in Type 3 fonts will be drawn with drawChar/drawString.
   virtual GBool interpretType3Chars() = 0;