6969import org .apache .pdfbox .cos .COSBase ;
7070import org .apache .pdfbox .cos .COSDictionary ;
7171import org .apache .pdfbox .cos .COSName ;
72+ import org .apache .pdfbox .cos .COSStream ;
7273import org .apache .pdfbox .pdmodel .PDResources ;
7374import org .apache .pdfbox .pdmodel .common .PDRectangle ;
7475import org .apache .pdfbox .pdmodel .common .function .PDFunction ;
@@ -2116,14 +2117,15 @@ Rectangle2D getBounds()
21162117
21172118 private boolean hasBlendMode (PDTransparencyGroup group , Set <COSBase > groupsDone )
21182119 {
2119- if (groupsDone .contains (group .getCOSObject ()))
2120+ COSStream groupCOSStream = group .getCOSObject ();
2121+ if (groupsDone .contains (groupCOSStream ))
21202122 {
21212123 // The group is being processed. Avoid endless recursion.
21222124 return false ;
21232125 }
2124- groupsDone .add (group . getCOSObject () );
2126+ groupsDone .add (groupCOSStream );
21252127
2126- Boolean val = blendModeMap .get (group . getCOSObject () );
2128+ Boolean val = blendModeMap .get (groupCOSStream );
21272129 if (val != null )
21282130 {
21292131 return val ;
@@ -2132,7 +2134,7 @@ private boolean hasBlendMode(PDTransparencyGroup group, Set<COSBase> groupsDone)
21322134 PDResources resources = group .getResources ();
21332135 if (resources == null )
21342136 {
2135- blendModeMap .put (group . getCOSObject () , false );
2137+ blendModeMap .put (groupCOSStream , false );
21362138 return false ;
21372139 }
21382140 for (COSName name : resources .getExtGStateNames ())
@@ -2145,7 +2147,7 @@ private boolean hasBlendMode(PDTransparencyGroup group, Set<COSBase> groupsDone)
21452147 BlendMode blendMode = extGState .getBlendMode ();
21462148 if (blendMode != BlendMode .NORMAL )
21472149 {
2148- blendModeMap .put (group . getCOSObject () , true );
2150+ blendModeMap .put (groupCOSStream , true );
21492151 return true ;
21502152 }
21512153 }
@@ -2165,12 +2167,12 @@ private boolean hasBlendMode(PDTransparencyGroup group, Set<COSBase> groupsDone)
21652167 if (xObject instanceof PDTransparencyGroup &&
21662168 hasBlendMode ((PDTransparencyGroup )xObject , groupsDone ))
21672169 {
2168- blendModeMap .put (group . getCOSObject () , true );
2170+ blendModeMap .put (groupCOSStream , true );
21692171 return true ;
21702172 }
21712173 }
21722174
2173- blendModeMap .put (group . getCOSObject () , false );
2175+ blendModeMap .put (groupCOSStream , false );
21742176 return false ;
21752177 }
21762178
0 commit comments