You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pdfbox.apache.org by ti...@apache.org on 2025/01/22 09:49:43 UTC

svn commit: r1923311 - in /pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel: graphics/form/PDFormXObject.java interactive/annotation/handlers/PDHighlightAppearanceHandler.java

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());