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 2020/01/04 10:53:44 UTC
svn commit: r1872312 - in
/pdfbox/branches/issue45/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics:
form/PDFormXObject.java image/PDImageXObject.java
Author: tilman
Date: Sat Jan 4 10:53:44 2020
New Revision: 1872312
URL: http://svn.apache.org/viewvc?rev=1872312&view=rev
Log:
PDFBOX-4730: add getter/setter for optional content
Modified:
pdfbox/branches/issue45/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/form/PDFormXObject.java
pdfbox/branches/issue45/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/image/PDImageXObject.java
Modified: pdfbox/branches/issue45/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/form/PDFormXObject.java
URL: http://svn.apache.org/viewvc/pdfbox/branches/issue45/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/form/PDFormXObject.java?rev=1872312&r1=1872311&r2=1872312&view=diff
==============================================================================
--- pdfbox/branches/issue45/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/form/PDFormXObject.java (original)
+++ pdfbox/branches/issue45/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/form/PDFormXObject.java Sat Jan 4 10:53:44 2020
@@ -21,6 +21,7 @@ import java.io.IOException;
import java.io.InputStream;
import org.apache.pdfbox.contentstream.PDContentStream;
import org.apache.pdfbox.cos.COSArray;
+import org.apache.pdfbox.cos.COSBase;
import org.apache.pdfbox.cos.COSDictionary;
import org.apache.pdfbox.cos.COSFloat;
import org.apache.pdfbox.cos.COSName;
@@ -30,6 +31,7 @@ import org.apache.pdfbox.pdmodel.PDResou
import org.apache.pdfbox.pdmodel.ResourceCache;
import org.apache.pdfbox.pdmodel.common.PDRectangle;
import org.apache.pdfbox.pdmodel.common.PDStream;
+import org.apache.pdfbox.pdmodel.documentinterchange.markedcontent.PDPropertyList;
import org.apache.pdfbox.pdmodel.graphics.PDXObject;
import org.apache.pdfbox.util.Matrix;
@@ -258,4 +260,30 @@ public class PDFormXObject extends PDXOb
{
getCOSObject().setInt(COSName.STRUCT_PARENTS, structParent);
}
+
+ /**
+ * This will get the optional content group or optional content membership dictionary.
+ *
+ * @return The optional content group or optional content membership dictionary or null if there
+ * is none.
+ */
+ public PDPropertyList getOptionalContent()
+ {
+ COSBase base = getCOSObject().getDictionaryObject(COSName.OC);
+ if (base instanceof COSDictionary)
+ {
+ return PDPropertyList.create((COSDictionary) base);
+ }
+ return null;
+ }
+
+ /**
+ * Sets the optional content group or optional content membership dictionary.
+ *
+ * @param oc The optional content group or optional content membership dictionary.
+ */
+ public void setOptionalContent(PDPropertyList oc)
+ {
+ getCOSObject().setItem(COSName.OC, oc);
+ }
}
Modified: pdfbox/branches/issue45/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/image/PDImageXObject.java
URL: http://svn.apache.org/viewvc/pdfbox/branches/issue45/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/image/PDImageXObject.java?rev=1872312&r1=1872311&r2=1872312&view=diff
==============================================================================
--- pdfbox/branches/issue45/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/image/PDImageXObject.java (original)
+++ pdfbox/branches/issue45/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/image/PDImageXObject.java Sat Jan 4 10:53:44 2020
@@ -36,6 +36,7 @@ import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.pdfbox.cos.COSArray;
import org.apache.pdfbox.cos.COSBase;
+import org.apache.pdfbox.cos.COSDictionary;
import org.apache.pdfbox.cos.COSInputStream;
import org.apache.pdfbox.cos.COSName;
import org.apache.pdfbox.cos.COSObject;
@@ -47,6 +48,7 @@ import org.apache.pdfbox.pdmodel.PDDocum
import org.apache.pdfbox.pdmodel.PDResources;
import org.apache.pdfbox.pdmodel.common.PDMetadata;
import org.apache.pdfbox.pdmodel.common.PDStream;
+import org.apache.pdfbox.pdmodel.documentinterchange.markedcontent.PDPropertyList;
import org.apache.pdfbox.pdmodel.graphics.PDXObject;
import org.apache.pdfbox.pdmodel.graphics.color.PDColorSpace;
import org.apache.pdfbox.pdmodel.graphics.color.PDDeviceGray;
@@ -900,4 +902,30 @@ public final class PDImageXObject extend
return null;
}
}
+
+ /**
+ * This will get the optional content group or optional content membership dictionary.
+ *
+ * @return The optional content group or optional content membership dictionary or null if there
+ * is none.
+ */
+ public PDPropertyList getOptionalContent()
+ {
+ COSBase base = getCOSObject().getDictionaryObject(COSName.OC);
+ if (base instanceof COSDictionary)
+ {
+ return PDPropertyList.create((COSDictionary) base);
+ }
+ return null;
+ }
+
+ /**
+ * Sets the optional content group or optional content membership dictionary.
+ *
+ * @param oc The optional content group or optional content membership dictionary.
+ */
+ public void setOptionalContent(PDPropertyList oc)
+ {
+ getCOSObject().setItem(COSName.OC, oc);
+ }
}