org.fontbox.ttf

Class TTFDataStream

Known Direct Subclasses:
MemoryTTFDataStream, RAFDataStream

public abstract class TTFDataStream
extends java.lang.Object

An interface into a data stream.
Version:
$Revision: 1.1 $
Author:
Ben Litchfield (ben@benlitchfield.com)

Method Summary

abstract void
close()
Close the underlying resources.
abstract long
getCurrentPosition()
Get the current position in the stream.
abstract InputStream
getOriginalData()
This will get the original data file that was used for this stream.
abstract int
read()
Read an unsigned byte.
abstract int
read(byte[] b, int off, int len)
byte[]
read(int numberOfBytes)
Read a specific number of bytes from the stream.
float
read32Fixed()
Read a 16.16 fixed value, where the first 16 bits are the decimal and the last 16 bits are the fraction.
Calendar
readInternationalDate()
Read an eight byte international date.
abstract long
readLong()
Read an unsigned byte.
int
readSignedByte()
Read a signed byte.
abstract short
readSignedShort()
Read an signed short.
String
readString(int length)
Read a fixed length ascii string.
String
readString(int length, String charset)
Read a fixed length ascii string.
long
readUnsignedInt()
Read an unsigned integer.
abstract int
readUnsignedShort()
Read an unsigned short.
int[]
readUnsignedShortArray(int length)
Read an unsigned short array.
abstract void
seek(long pos)
Seek into the datasource.

Method Details

close

public abstract void close()
            throws IOException
Close the underlying resources.

getCurrentPosition

public abstract long getCurrentPosition()
            throws IOException
Get the current position in the stream.
Returns:
The current position in the stream.

getOriginalData

public abstract InputStream getOriginalData()
            throws IOException
This will get the original data file that was used for this stream.
Returns:
The data that was read from.

read

public abstract int read()
            throws IOException
Read an unsigned byte.
Returns:
An unsigned byte.

read

public abstract int read(byte[] b,
                         int off,
                         int len)
            throws IOException
Parameters:
b - The buffer to write to.
off - The offset into the buffer.
len - The length into the buffer.
Returns:
The number of bytes read.
See Also:
java.io.InputStream.read( byte[], int, int )

read

public byte[] read(int numberOfBytes)
            throws IOException
Read a specific number of bytes from the stream.
Parameters:
numberOfBytes - The number of bytes to read.
Returns:
The byte buffer.

read32Fixed

public float read32Fixed()
            throws IOException
Read a 16.16 fixed value, where the first 16 bits are the decimal and the last 16 bits are the fraction.
Returns:
A 32 bit value.

readInternationalDate

public Calendar readInternationalDate()
            throws IOException
Read an eight byte international date.
Returns:
An signed short.

readLong

public abstract long readLong()
            throws IOException
Read an unsigned byte.
Returns:
An unsigned byte.

readSignedByte

public int readSignedByte()
            throws IOException
Read a signed byte.
Returns:
A signed byte.

readSignedShort

public abstract short readSignedShort()
            throws IOException
Read an signed short.
Returns:
An signed short.

readString

public String readString(int length)
            throws IOException
Read a fixed length ascii string.
Parameters:
length - The length of the string to read.
Returns:
A string of the desired length.

readString

public String readString(int length,
                         String charset)
            throws IOException
Read a fixed length ascii string.
Parameters:
length - The length of the string to read in bytes.
charset - The expected character set of the string.
Returns:
A string of the desired length.

readUnsignedInt

public long readUnsignedInt()
            throws IOException
Read an unsigned integer.
Returns:
An unsiged integer.

readUnsignedShort

public abstract int readUnsignedShort()
            throws IOException
Read an unsigned short.
Returns:
An unsigned short.

readUnsignedShortArray

public int[] readUnsignedShortArray(int length)
            throws IOException
Read an unsigned short array.
Parameters:
length - The length of the array to read.
Returns:
An unsigned short array.

seek

public abstract void seek(long pos)
            throws IOException
Seek into the datasource.
Parameters:
pos - The position to seek to.