Class PDFNumsArray
java.lang.Object
org.apache.fop.pdf.PDFObject
org.apache.fop.pdf.PDFNumsArray
- All Implemented Interfaces:
CompressedObject, PDFWritable
Class representing an "Nums" array object (for Number Trees).
-
Field Summary
FieldsModifier and TypeFieldDescriptionSorted Map holding the values of this array. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionget(int key) Gets an entry.Gets an entry.private ObjectindirectIfReq(Object obj) This method provides conformance with the different PDF specs which require or recommend different types be used for Number Tree array values.intlength()Returns the length of the arrayintoutput(OutputStream stream) Write the PDF represention of this objectvoidSets an entry.voidSets an entry.private booleanDetermines whether a value object should be converted to an indirect reference for inclusion in a Number Tree array according to the PDF spec.Methods inherited from class PDFObject
contentEquals, encode, encodeBinaryToHexString, encodeString, encodeText, formatObject, getChildren, getDocument, getDocumentSafely, getGeneration, getObjectID, getObjectNumber, getParent, hasObjectNumber, makeReference, outputInline, referencePDF, setDocument, setObjectNumber, setObjectNumber, setObjectNumber, setParent, supportsObjectStream, toPDF, toPDFString
-
Field Details
-
map
-
-
Constructor Details
-
PDFNumsArray
Create a new, empty array object.- Parameters:
parent- the object's parent if any
-
-
Method Details
-
length
public int length()Returns the length of the array- Returns:
- the length of the array
-
shouldConvertToRef
Determines whether a value object should be converted to an indirect reference for inclusion in a Number Tree array according to the PDF spec. PDF1.0 - 1.2 - Spec is silent on this subject (as Number Trees don't exist). PDF1.3 invalid input: '&' 1.4 - Values must be indirect object refs. PDF1.5 - Recommended: stream, dictionary, array, and string values be indirect object refs. PDF1.6 - 2.0 - Stream values must be indirect object refs. Recommended: dictionary, array, and string values be indirect object refs. Method signals for values that must be, and those recommended to be indirect object refs.- Parameters:
obj- The object to be considered.- Returns:
- True iff the object should be converted.
-
indirectIfReq
This method provides conformance with the different PDF specs which require or recommend different types be used for Number Tree array values. Method indirects objects where indicated.- Parameters:
obj- The object to be considered for indirection.- Returns:
- Either the object or a reference to the object.
-
put
-
put
Sets an entry.- Parameters:
key- the key of the value to setobj- the new value
-
get
-
get
Gets an entry.- Parameters:
key- the key of requested value- Returns:
- the requested value
-
output
Write the PDF represention of this object- Specified by:
outputin interfaceCompressedObject- Overrides:
outputin classPDFObject- Parameters:
stream- the stream to write the PDF to- Returns:
- the number of bytes written
- Throws:
IOException- if there is an error writing to the stream
-