public abstract class PdfObject extends Object implements Serializable
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
, Serialized Form
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 the indirect reference.
|
static int |
NAME
A possible type of PdfObject
|
static String |
NOTHING
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 String |
TEXT_PDFDOCENCODING
This is the default encoding to be used for converting Strings into bytes and vice versa.
|
static 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, String content)
Constructs a PdfObject of a certain type with a certain content.
|
Modifier and Type | Method and Description |
---|---|
boolean |
canBeInObjStm()
Whether this object can be contained in an object stream.
|
byte[] |
getBytes()
Gets the presentation of this object in a byte array
|
PRIndirectReference |
getIndRef()
Get the indirect reference
|
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 PdfObject is of the type PdfIndirectObject .
|
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(String content)
Changes the content of this PdfObject .
|
void |
setIndRef(PRIndirectReference indRef)
Set the indirect reference
|
void |
toPdf(PdfWriter writer, OutputStream os)
Writes the PDF representation of this PdfObject as an array of byte s to the writer.
|
String |
toString()
Returns the String -representation of this PdfObject .
|
int |
type()
Returns the type of this PdfObject .
|
public static final int BOOLEAN
PdfObject
public static final int NUMBER
PdfObject
public static final int STRING
PdfObject
public static final int NAME
PdfObject
public static final int ARRAY
PdfObject
public static final int DICTIONARY
PdfObject
public static final int STREAM
PdfObject
public static final int NULL
PdfObject
public static final int INDIRECT
PdfObject
public static final String NOTHING
PdfNull
-object and for an empty PdfString
-object.
public static final String TEXT_PDFDOCENCODING
public static final String TEXT_UNICODE
protected byte[] bytes
PdfObject
protected int type
PdfObject
protected PRIndirectReference indRef
protected PdfObject(int type)
PdfObject
of a certain type without any content.
type
- type of the new PdfObject
protected PdfObject(int type, String content)
PdfObject
of a certain type with a certain content.
type
- type of the new PdfObject
content
- 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 PdfObject
bytes
- content of the new PdfObject
as an array of byte
.
public void toPdf(PdfWriter writer, OutputStream os) throws IOException
PdfObject
as an array of byte
s to the writer.
writer
- for backwards compatibility
os
- The OutputStream
to write the bytes to.
IOException
public String toString()
String
-representation of this PdfObject
.
public byte[] getBytes()
public boolean canBeInObjStm()
true
if this object can be in an object stream. Otherwise false
public 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().
int
protected void setContent(String content)
PdfObject
.
content
- the new content of this PdfObject
public int type()
PdfObject
. May be either of: - NULL: A PdfNull
- BOOLEAN: A PdfBoolean
- NUMBER: A PdfNumber
- STRING: A PdfString
- NAME: A PdfName
- ARRAY: A PdfArray
- DICTIONARY: A PdfDictionary
- STREAM: A PdfStream
- INDIRECT: >PdfIndirectObject
public boolean isNull()
PdfObject
is of the type PdfNull
.
true
or false
public boolean isBoolean()
PdfObject
is of the type PdfBoolean
.
true
or false
public boolean isNumber()
PdfObject
is of the type PdfNumber
.
true
or false
public boolean isString()
PdfObject
is of the type PdfString
.
true
or false
public boolean isName()
PdfObject
is of the type PdfName
.
true
or false
public boolean isArray()
PdfObject
is of the type PdfArray
.
true
or false
public boolean isDictionary()
PdfObject
is of the type PdfDictionary
.
true
or false
public boolean isStream()
PdfObject
is of the type PdfStream
.
true
or false
public boolean isIndirect()
PdfObject
is of the type PdfIndirectObject
.
true
if this is an indirect object, otherwise false
public PRIndirectReference getIndRef()
PdfIndirectReference
public void setIndRef(PRIndirectReference indRef)
indRef
- New value as a PdfIndirectReference
Copyright © 1998–2022. All rights reserved.