public final class COSString extends COSBase
Text strings are used for character strings that contain information intended to be human-readable, such as text annotations, bookmark names, article names, document information, and so forth.
PDFDocEncoded strings are used for characters that are represented in a single byte.
ASCII strings are used for characters that are represented in a single byte using ASCII encoding.
Byte strings are used for binary data represented as a series of bytes, but the encoding is not known. The bytes of the string need not represent characters.
Modifier and Type | Field and Description |
---|---|
private byte[] |
bytes |
static boolean |
FORCE_PARSING |
private boolean |
forceHexForm |
private static org.apache.commons.logging.Log |
LOG |
Constructor and Description |
---|
COSString(byte[] bytes)
Creates a new PDF string from a byte array.
|
COSString(java.lang.String text)
Creates a new text string from a Java String.
|
Modifier and Type | Method and Description |
---|---|
java.lang.Object |
accept(ICOSVisitor visitor)
Visitor pattern double dispatch method.
|
boolean |
equals(java.lang.Object obj) |
java.lang.String |
getASCII()
Returns the content of this string as a PDF ASCII string.
|
byte[] |
getBytes()
Returns the raw bytes of the string.
|
boolean |
getForceHexForm()
Returns true if the string is to be written in hex form.
|
java.lang.String |
getString()
Returns the content of this string as a PDF text string.
|
int |
hashCode() |
static COSString |
parseHex(java.lang.String hex)
This will create a COS string from a string of hex characters.
|
void |
setForceHexForm(boolean value)
Sets whether or not to force the string is to be written in hex form.
|
void |
setValue(byte[] value)
Sets the raw value of this string.
|
java.lang.String |
toHexString()
This will take this string and create a hex representation of the bytes that make the string.
|
java.lang.String |
toString() |
getCOSObject, isDirect, setDirect
private static final org.apache.commons.logging.Log LOG
private byte[] bytes
private boolean forceHexForm
public static final boolean FORCE_PARSING
public COSString(byte[] bytes)
bytes
- The raw bytes of the PDF text string or byte string.public COSString(java.lang.String text)
text
- The string value of the object.public static COSString parseHex(java.lang.String hex) throws java.io.IOException
hex
- A hex string.java.io.IOException
- If there is an error with the hex string.public void setValue(byte[] value)
value
- The raw bytes of the PDF text string or byte string.public void setForceHexForm(boolean value)
value
- True to force hex.public boolean getForceHexForm()
public java.lang.String getString()
public java.lang.String getASCII()
public byte[] getBytes()
public java.lang.String toHexString()
public java.lang.Object accept(ICOSVisitor visitor) throws java.io.IOException
public boolean equals(java.lang.Object obj)
equals
in class java.lang.Object
public int hashCode()
hashCode
in class java.lang.Object
public java.lang.String toString()
toString
in class java.lang.Object