public abstract class PdfObject
extends java.lang.Object
PdfObject is the abstract superclass of all PDF objects.
PDF supports seven basic types of objects: Booleans, numbers, strings, names,
arrays, dictionaries and streams. In addition, PDF provides a null object.
Objects may be labeled so that they can be referred to by other objects.
All these basic PDF objects are described in the 'Portable Document Format
Reference Manual version 1.3' Chapter 4 (pages 37-54).
PdfNull,
PdfBoolean,
PdfNumber,
PdfString,
PdfName,
PdfArray,
PdfDictionary,
PdfStream,
PdfIndirectReference| Modifier and Type | Field and Description |
|---|---|
static int |
ARRAY
a possible type of
PdfObject |
static int |
BOOLEAN
a possible type of
PdfObject |
protected byte[] |
bytes
the content of this
PdfObject |
static int |
DICTIONARY
a possible type of
PdfObject |
static int |
INDIRECT
a possible type of
PdfObject |
protected PRIndirectReference |
indRef
Holds value of property indRef.
|
static int |
NAME
a possible type of
PdfObject |
static java.lang.String |
NOTHING
This is an empty string used for the
PdfNull-object and for an empty PdfString-object. |
static int |
NULL
a possible type of
PdfObject |
static int |
NUMBER
a possible type of
PdfObject |
static int |
STREAM
a possible type of
PdfObject |
static int |
STRING
a possible type of
PdfObject |
static java.lang.String |
TEXT_PDFDOCENCODING
This is the default encoding to be used for converting Strings into bytes and vice versa.
|
static java.lang.String |
TEXT_UNICODE
This is the encoding to be used to output text in Unicode.
|
protected int |
type
the type of this
PdfObject |
| Modifier | Constructor and Description |
|---|---|
protected |
PdfObject(int type)
Constructs a
PdfObject of a certain type without any content. |
protected |
PdfObject(int type,
byte[] bytes)
Constructs a
PdfObject of a certain type with a certain content. |
protected |
PdfObject(int type,
java.lang.String content)
Constructs a
PdfObject of a certain type with a certain content. |
| Modifier and Type | Method and Description |
|---|---|
boolean |
canBeInObjStm()
Can this object be in an object stream?
|
byte[] |
getBytes()
Gets the presentation of this object in a byte array
|
PRIndirectReference |
getIndRef()
Getter for property indRef.
|
boolean |
isArray()
Checks if this
PdfObject is of the type PdfArray. |
boolean |
isBoolean()
Checks if this
PdfObject is of the type PdfBoolean. |
boolean |
isDictionary()
Checks if this
PdfObject is of the type PdfDictionary. |
boolean |
isIndirect()
Checks if this is an indirect object.
|
boolean |
isName()
Checks if this
PdfObject is of the type PdfName. |
boolean |
isNull()
Checks if this
PdfObject is of the type PdfNull. |
boolean |
isNumber()
Checks if this
PdfObject is of the type PdfNumber. |
boolean |
isStream()
Checks if this
PdfObject is of the type PdfStream. |
boolean |
isString()
Checks if this
PdfObject is of the type PdfString. |
int |
length()
Returns the length of the actual content of the
PdfObject. |
protected void |
setContent(java.lang.String content)
Changes the content of this
PdfObject. |
void |
setIndRef(PRIndirectReference indRef)
Setter for property indRef.
|
void |
toPdf(PdfWriter writer,
java.io.OutputStream os)
Writes the PDF representation of this
PdfObject as an array of bytes to the writer. |
java.lang.String |
toString()
Returns the
String-representation of this PdfObject. |
int |
type()
Returns the type of this
PdfObject. |
public static final int BOOLEAN
PdfObjectpublic static final int NUMBER
PdfObjectpublic static final int STRING
PdfObjectpublic static final int NAME
PdfObjectpublic static final int ARRAY
PdfObjectpublic static final int DICTIONARY
PdfObjectpublic static final int STREAM
PdfObjectpublic static final int NULL
PdfObjectpublic static final int INDIRECT
PdfObjectpublic static final java.lang.String NOTHING
PdfNull-object and for an empty PdfString-object.public static final java.lang.String TEXT_PDFDOCENCODING
public static final java.lang.String TEXT_UNICODE
protected byte[] bytes
PdfObjectprotected int type
PdfObjectprotected PRIndirectReference indRef
protected PdfObject(int type)
PdfObject of a certain type without any content.type - type of the new PdfObjectprotected PdfObject(int type,
java.lang.String content)
PdfObject of a certain type with a certain content.type - type of the new PdfObjectcontent - content of the new PdfObject as a String.protected PdfObject(int type,
byte[] bytes)
PdfObject of a certain type with a certain content.type - type of the new PdfObjectbytes - content of the new PdfObject as an array of byte.public void toPdf(PdfWriter writer, java.io.OutputStream os) throws java.io.IOException
PdfObject as an array of bytes to the writer.writer - for backwards compatibilityos - the outputstream to write the bytes to.java.io.IOExceptionpublic byte[] getBytes()
public boolean canBeInObjStm()
public java.lang.String toString()
String-representation of this PdfObject.toString in class java.lang.ObjectStringpublic int length()
PdfObject.
In some cases, namely for PdfString and PdfStream,
this method differs from the method pdfLength because pdfLength
returns the length of the PDF representation of the object, not of the actual content
as does the method length.
Remark: the actual content of an object is in some cases identical to its representation. The following statement is always true: length() >= pdfLength().
protected void setContent(java.lang.String content)
PdfObject.content - the new content of this PdfObjectpublic int type()
PdfObject.public boolean isNull()
PdfObject is of the type PdfNull.true or falsepublic boolean isBoolean()
PdfObject is of the type PdfBoolean.true or falsepublic boolean isNumber()
PdfObject is of the type PdfNumber.true or falsepublic boolean isString()
PdfObject is of the type PdfString.true or falsepublic boolean isName()
PdfObject is of the type PdfName.true or falsepublic boolean isArray()
PdfObject is of the type PdfArray.true or falsepublic boolean isDictionary()
PdfObject is of the type PdfDictionary.true or falsepublic boolean isStream()
PdfObject is of the type PdfStream.true or falsepublic boolean isIndirect()
public PRIndirectReference getIndRef()
public void setIndRef(PRIndirectReference indRef)
indRef - New value of property indRef.