Package com.tom_roush.pdfbox.cos
Class COSString
- java.lang.Object
-
- com.tom_roush.pdfbox.cos.COSBase
-
- com.tom_roush.pdfbox.cos.COSString
-
- All Implemented Interfaces:
COSObjectable
public final class COSString extends COSBase
A string object, which may be a text string, a PDFDocEncoded string, ASCII string, or byte string.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.
-
-
Field Summary
Fields Modifier and Type Field Description static booleanFORCE_PARSING
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description Objectaccept(ICOSVisitor visitor)Visitor pattern double dispatch method.booleanequals(Object obj)StringgetASCII()Returns the content of this string as a PDF ASCII string.byte[]getBytes()Returns the raw bytes of the string.booleangetForceHexForm()Returns true if the string is to be written in hex form.StringgetString()Returns the content of this string as a PDF text string.inthashCode()static COSStringparseHex(String hex)This will create a COS string from a string of hex characters.voidsetForceHexForm(boolean value)Sets whether to force the string is to be written in hex form.voidsetValue(byte[] value)Sets the raw value of this string.StringtoHexString()This will take this string and create a hex representation of the bytes that make the string.StringtoString()-
Methods inherited from class com.tom_roush.pdfbox.cos.COSBase
getCOSObject, isDirect, setDirect
-
-
-
-
Constructor Detail
-
COSString
public COSString(byte[] bytes)
Creates a new PDF string from a byte array. This method can be used to read a string from an existing PDF file, or to create a new byte string.- Parameters:
bytes- The raw bytes of the PDF text string or byte string.
-
COSString
public COSString(String text)
Creates a new text string from a Java String.- Parameters:
text- The string value of the object.
-
-
Method Detail
-
parseHex
public static COSString parseHex(String hex) throws IOException
This will create a COS string from a string of hex characters.- Parameters:
hex- A hex string.- Returns:
- A cos string with the hex characters converted to their actual bytes.
- Throws:
IOException- If there is an error with the hex string.
-
setValue
public void setValue(byte[] value)
Sets the raw value of this string.- Parameters:
value- The raw bytes of the PDF text string or byte string.
-
setForceHexForm
public void setForceHexForm(boolean value)
Sets whether to force the string is to be written in hex form. This is needed when signing PDF files.- Parameters:
value- True to force hex.
-
getForceHexForm
public boolean getForceHexForm()
Returns true if the string is to be written in hex form.- Returns:
- the hex representation of this string.
-
getString
public String getString()
Returns the content of this string as a PDF text string.- Returns:
- the string representation of this string using the given encoding.
-
getASCII
public String getASCII()
Returns the content of this string as a PDF ASCII string.- Returns:
- the ASCII representation of this string.
-
getBytes
public byte[] getBytes()
Returns the raw bytes of the string. Best used with a PDF byte string.- Returns:
- the raw bytes of this string.
-
toHexString
public String toHexString()
This will take this string and create a hex representation of the bytes that make the string.- Returns:
- A hex string representing the bytes in this string.
-
accept
public Object accept(ICOSVisitor visitor) throws IOException
Visitor pattern double dispatch method.- Specified by:
acceptin classCOSBase- Parameters:
visitor- The object to notify when visiting this object.- Returns:
- any object, depending on the visitor implementation, or null
- Throws:
IOException- If an error occurs while visiting this object.
-
-