Author: tilman
Date: Wed Jan 22 09:49:43 2025
New Revision: 1923311

URL: http://svn.apache.org/viewvc?rev=1923311&view=rev
Log:
PDFBOX-5938: implement missing method and use it

Modified:
    
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/form/PDFormXObject.java
    
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/annotation/handlers/PDHighlightAppearanceHandler.java

Modified: 
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/form/PDFormXObject.java
URL: 
http://svn.apache.org/viewvc/pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/form/PDFormXObject.java?rev=1923311&r1=1923310&r2=1923311&view=diff
==============================================================================
--- 
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/form/PDFormXObject.java
 (original)
+++ 
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/form/PDFormXObject.java
 Wed Jan 22 09:49:43 2025
@@ -118,15 +118,15 @@ public class PDFormXObject extends PDXOb
     }
 
     /**
-     * Returns the group attributes dictionary.
+     * Returns the transparency group attributes dictionary.
      *
-     * @return the group attributes dictionary
+     * @return the transparency group attributes dictionary, never null.
      */
     public PDTransparencyGroupAttributes getGroup()
     {
         if( group == null ) 
         {
-            COSDictionary dic = (COSDictionary) 
getCOSObject().getDictionaryObject(COSName.GROUP);
+            COSDictionary dic = getCOSObject().getCOSDictionary(COSName.GROUP);
             if( dic != null ) 
             {
                 group = new PDTransparencyGroupAttributes(dic);
@@ -134,7 +134,18 @@ public class PDFormXObject extends PDXOb
         }
         return group;
     }
-    
+
+    /**
+     * Sets the transparency group attributes dictionary.
+     *
+     * @param group a transparency group attributes dictionary.
+     */
+    public void setGroup(PDTransparencyGroupAttributes group)
+    {
+        this.group = group;
+        getCOSObject().setItem(COSName.GROUP, group);
+    }
+
     public PDStream getContentStream()
     {
         return new PDStream(getCOSObject());

Modified: 
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/annotation/handlers/PDHighlightAppearanceHandler.java
URL: 
http://svn.apache.org/viewvc/pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/annotation/handlers/PDHighlightAppearanceHandler.java?rev=1923311&r1=1923310&r2=1923311&view=diff
==============================================================================
--- 
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/annotation/handlers/PDHighlightAppearanceHandler.java
 (original)
+++ 
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/annotation/handlers/PDHighlightAppearanceHandler.java
 Wed Jan 22 09:49:43 2025
@@ -19,8 +19,6 @@ package org.apache.pdfbox.pdmodel.intera
 import java.io.IOException;
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
-import org.apache.pdfbox.cos.COSDictionary;
-import org.apache.pdfbox.cos.COSName;
 import org.apache.pdfbox.io.IOUtils;
 import org.apache.pdfbox.pdmodel.PDFormContentStream;
 import org.apache.pdfbox.pdmodel.PDResources;
@@ -33,6 +31,7 @@ import org.apache.pdfbox.pdmodel.interac
 import org.apache.pdfbox.pdmodel.interactive.annotation.PDAnnotationTextMarkup;
 import org.apache.pdfbox.pdmodel.PDAppearanceContentStream;
 import org.apache.pdfbox.pdmodel.PDDocument;
+import org.apache.pdfbox.pdmodel.graphics.form.PDTransparencyGroupAttributes;
 
 /**
  * 
@@ -140,10 +139,7 @@ public class PDHighlightAppearanceHandle
                 IOUtils.closeQuietly(mwfofrmCS);
             }
             frm1.setBBox(annotation.getRectangle());
-            COSDictionary groupDict = new COSDictionary();
-            groupDict.setItem(COSName.S, COSName.TRANSPARENCY);
-            //TODO PDFormXObject.setGroup() is missing
-            frm1.getCOSObject().setItem(COSName.GROUP, groupDict);
+            frm1.setGroup(new PDTransparencyGroupAttributes());
             cs.drawForm(frm1);
             frm2.setBBox(annotation.getRectangle());
 


Reply via email to