Package com.aowagie.text.pdf
Class PdfEncodings
- java.lang.Object
-
- com.aowagie.text.pdf.PdfEncodings
-
final class PdfEncodings extends java.lang.ObjectSupports fast encodings for winansi and PDFDocEncoding. Supports conversions from CJK encodings to CID. Supports custom encodings.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static classPdfEncodings.Cp437Conversionprivate static classPdfEncodings.SymbolConversionprivate static classPdfEncodings.SymbolTTConversionprivate static classPdfEncodings.WingdingsConversion
-
Field Summary
Fields Modifier and Type Field Description private static intCIDCHARprivate static intCIDNONEprivate static intCIDRANGEprivate static java.util.HashMapcmapsprivate static java.util.HashMapextraEncodingsprivate static IntHashtablepdfEncodingprivate static char[]pdfEncodingByteToChar(package private) static IntHashtablewinansiprivate static char[]winansiByteToChar
-
Constructor Summary
Constructors Constructor Description PdfEncodings()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description private static voidaddExtraEncoding(java.lang.String name, ExtraEncoding enc)Adds an extra encoding.private static voidbreakLong(long n, int size, byte[] seqs)private static java.lang.StringconvertCmap(java.lang.String name, byte[] seq, int start, int length)Converts abytearray encoded asnameto a CID string.static byte[]convertToBytes(char char1, java.lang.String encoding)Converts aStringto a byte array according to the font's encoding.static byte[]convertToBytes(java.lang.String text, java.lang.String encoding)Converts aStringto a byte array according to the font's encoding.static java.lang.StringconvertToString(byte[] bytes, java.lang.String encoding)Converts a byte array to aStringaccording to the some encoding.private static java.lang.StringdecodeSequence(byte[] seq, int start, int length, char[][] planes)private static voidencodeSequence(int size, byte[] seqs, char cid, java.util.ArrayList planes)private static voidencodeStream(java.io.InputStream in, java.util.ArrayList planes)static booleanisPdfDocEncoding(java.lang.String text)Checks istextonly has PdfDocEncoding characters.private static char[][]readCmap(java.lang.String name, byte[][] newline)private static voidreadCmap(java.lang.String name, java.util.ArrayList planes)
-
-
-
Field Detail
-
CIDNONE
private static final int CIDNONE
- See Also:
- Constant Field Values
-
CIDRANGE
private static final int CIDRANGE
- See Also:
- Constant Field Values
-
CIDCHAR
private static final int CIDCHAR
- See Also:
- Constant Field Values
-
winansiByteToChar
private static final char[] winansiByteToChar
-
pdfEncodingByteToChar
private static final char[] pdfEncodingByteToChar
-
winansi
static final IntHashtable winansi
-
pdfEncoding
private static final IntHashtable pdfEncoding
-
extraEncodings
private static java.util.HashMap extraEncodings
-
cmaps
private static final java.util.HashMap cmaps
-
-
Method Detail
-
convertToBytes
public static final byte[] convertToBytes(java.lang.String text, java.lang.String encoding)Converts aStringto a byte array according to the font's encoding.- Parameters:
encoding- the encodingtext- theStringto be converted- Returns:
- an array of
byterepresenting the conversion according to the font's encoding
-
convertToBytes
public static final byte[] convertToBytes(char char1, java.lang.String encoding)Converts aStringto a byte array according to the font's encoding.- Parameters:
encoding- the encodingchar1- thecharto be converted- Returns:
- an array of
byterepresenting the conversion according to the font's encoding
-
convertToString
public static final java.lang.String convertToString(byte[] bytes, java.lang.String encoding)Converts a byte array to aStringaccording to the some encoding.- Parameters:
bytes- the bytes to convertencoding- the encoding- Returns:
- the converted
String
-
isPdfDocEncoding
public static boolean isPdfDocEncoding(java.lang.String text)
Checks istextonly has PdfDocEncoding characters.- Parameters:
text- theStringto test- Returns:
trueif only PdfDocEncoding characters are present
-
convertCmap
private static java.lang.String convertCmap(java.lang.String name, byte[] seq, int start, int length)Converts abytearray encoded asnameto a CID string. This is needed to reach some CJK characters that don't exist in 16 bit Unicode. The font to use this result must use the encoding "Identity-H" or "Identity-V". See ftp://ftp.oreilly.com/pub/examples/nutshell/cjkv/adobe/.- Parameters:
name- the CJK encoding namestart- the start offset in the datalength- the number of bytes to convertseq- thebytearray to be decoded- Returns:
- the CID string
-
decodeSequence
private static java.lang.String decodeSequence(byte[] seq, int start, int length, char[][] planes)
-
readCmap
private static char[][] readCmap(java.lang.String name, byte[][] newline) throws java.io.IOException- Throws:
java.io.IOException
-
readCmap
private static void readCmap(java.lang.String name, java.util.ArrayList planes) throws java.io.IOException- Throws:
java.io.IOException
-
encodeStream
private static void encodeStream(java.io.InputStream in, java.util.ArrayList planes) throws java.io.IOException- Throws:
java.io.IOException
-
breakLong
private static void breakLong(long n, int size, byte[] seqs)
-
encodeSequence
private static void encodeSequence(int size, byte[] seqs, char cid, java.util.ArrayList planes)
-
addExtraEncoding
private static void addExtraEncoding(java.lang.String name, ExtraEncoding enc)Adds an extra encoding.- Parameters:
name- the name of the encoding. The encoding recognition is case insensitiveenc- the conversion class
-
-