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 ;
@@ -2035,14 +2036,15 @@ Rectangle2D getBounds()
20352036
20362037 private boolean hasBlendMode (PDTransparencyGroup group , Set <COSBase > groupsDone )
20372038 {
2038- if (groupsDone .contains (group .getCOSObject ()))
2039+ COSStream groupCOSStream = group .getCOSObject ();
2040+ if (groupsDone .contains (groupCOSStream ))
20392041 {
20402042 // The group is being processed. Avoid endless recursion.
20412043 return false ;
20422044 }
2043- groupsDone .add (group . getCOSObject () );
2045+ groupsDone .add (groupCOSStream );
20442046
2045- Boolean val = blendModeMap .get (group . getCOSObject () );
2047+ Boolean val = blendModeMap .get (groupCOSStream );
20462048 if (val != null )
20472049 {
20482050 return val ;
@@ -2051,7 +2053,7 @@ private boolean hasBlendMode(PDTransparencyGroup group, Set<COSBase> groupsDone)
20512053 PDResources resources = group .getResources ();
20522054 if (resources == null )
20532055 {
2054- blendModeMap .put (group . getCOSObject () , false );
2056+ blendModeMap .put (groupCOSStream , false );
20552057 return false ;
20562058 }
20572059 for (COSName name : resources .getExtGStateNames ())
@@ -2064,7 +2066,7 @@ private boolean hasBlendMode(PDTransparencyGroup group, Set<COSBase> groupsDone)
20642066 BlendMode blendMode = extGState .getBlendMode ();
20652067 if (blendMode != BlendMode .NORMAL )
20662068 {
2067- blendModeMap .put (group . getCOSObject () , true );
2069+ blendModeMap .put (groupCOSStream , true );
20682070 return true ;
20692071 }
20702072 }
@@ -2084,12 +2086,12 @@ private boolean hasBlendMode(PDTransparencyGroup group, Set<COSBase> groupsDone)
20842086 if (xObject instanceof PDTransparencyGroup &&
20852087 hasBlendMode ((PDTransparencyGroup )xObject , groupsDone ))
20862088 {
2087- blendModeMap .put (group . getCOSObject () , true );
2089+ blendModeMap .put (groupCOSStream , true );
20882090 return true ;
20892091 }
20902092 }
20912093
2092- blendModeMap .put (group . getCOSObject () , false );
2094+ blendModeMap .put (groupCOSStream , false );
20932095 return false ;
20942096 }
20952097
0 commit comments