fop 1.1

org.apache.fop.fonts.truetype
Class FontFileReader

java.lang.Object
  extended by org.apache.fop.fonts.truetype.FontFileReader

public class FontFileReader
extends java.lang.Object

Reads a TrueType font file into a byte array and provides file like functions for array access.


Constructor Summary
FontFileReader(java.io.InputStream in)
          Constructor
FontFileReader(java.lang.String fileName)
          Constructor
 
Method Summary
 byte[] getAllBytes()
          Returns the full byte array representation of the file.
 byte[] getBytes(int offset, int length)
          Return a copy of the internal array
 int getCurrentPos()
          Returns current file position.
 int getFileSize()
          Returns the size of the file.
 byte readTTFByte()
          Read 1 signed byte.
 int readTTFLong()
          Read 4 bytes.
 short readTTFShort()
          Read 2 bytes signed.
 short readTTFShort(long pos)
          Read 2 bytes signed at position pos without changing current position.
 java.lang.String readTTFString()
          Read a NUL terminated ISO-8859-1 string.
 java.lang.String readTTFString(int len)
          Read an ISO-8859-1 string of len bytes.
 java.lang.String readTTFString(int len, int encodingID)
          Read an ISO-8859-1 string of len bytes.
 int readTTFUByte()
          Read 1 unsigned byte.
 long readTTFULong()
          Read 4 bytes.
 int readTTFUShort()
          Read 2 bytes unsigned.
 int readTTFUShort(long pos)
          Read 2 bytes unsigned at position pos without changing current position.
 void seekSet(long offset)
          Set current file position to offset
 void skip(long add)
          Skip a given number of bytes.
 void writeTTFUShort(long pos, int val)
          Write a USHort at a given position.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

FontFileReader

public FontFileReader(java.lang.String fileName)
               throws java.io.IOException
Constructor

Parameters:
fileName - filename to read
Throws:
java.io.IOException - In case of an I/O problem

FontFileReader

public FontFileReader(java.io.InputStream in)
               throws java.io.IOException
Constructor

Parameters:
in - InputStream to read from
Throws:
java.io.IOException - In case of an I/O problem
Method Detail

seekSet

public void seekSet(long offset)
             throws java.io.IOException
Set current file position to offset

Parameters:
offset - The new offset to set
Throws:
java.io.IOException - In case of an I/O problem

skip

public void skip(long add)
          throws java.io.IOException
Skip a given number of bytes.

Parameters:
add - The number of bytes to advance
Throws:
java.io.IOException - In case of an I/O problem

getCurrentPos

public int getCurrentPos()
Returns current file position.

Returns:
int The current position.

getFileSize

public int getFileSize()
Returns the size of the file.

Returns:
int The filesize

readTTFByte

public final byte readTTFByte()
                       throws java.io.IOException
Read 1 signed byte.

Returns:
One byte
Throws:
java.io.IOException - If EOF is reached

readTTFUByte

public final int readTTFUByte()
                       throws java.io.IOException
Read 1 unsigned byte.

Returns:
One unsigned byte
Throws:
java.io.IOException - If EOF is reached

readTTFShort

public final short readTTFShort()
                         throws java.io.IOException
Read 2 bytes signed.

Returns:
One signed short
Throws:
java.io.IOException - If EOF is reached

readTTFUShort

public final int readTTFUShort()
                        throws java.io.IOException
Read 2 bytes unsigned.

Returns:
One unsigned short
Throws:
java.io.IOException - If EOF is reached

writeTTFUShort

public final void writeTTFUShort(long pos,
                                 int val)
                          throws java.io.IOException
Write a USHort at a given position.

Parameters:
pos - The absolute position to write to
val - The value to write
Throws:
java.io.IOException - If EOF is reached

readTTFShort

public final short readTTFShort(long pos)
                         throws java.io.IOException
Read 2 bytes signed at position pos without changing current position.

Parameters:
pos - The absolute position to read from
Returns:
One signed short
Throws:
java.io.IOException - If EOF is reached

readTTFUShort

public final int readTTFUShort(long pos)
                        throws java.io.IOException
Read 2 bytes unsigned at position pos without changing current position.

Parameters:
pos - The absolute position to read from
Returns:
One unsigned short
Throws:
java.io.IOException - If EOF is reached

readTTFLong

public final int readTTFLong()
                      throws java.io.IOException
Read 4 bytes.

Returns:
One signed integer
Throws:
java.io.IOException - If EOF is reached

readTTFULong

public final long readTTFULong()
                        throws java.io.IOException
Read 4 bytes.

Returns:
One unsigned integer
Throws:
java.io.IOException - If EOF is reached

readTTFString

public final java.lang.String readTTFString()
                                     throws java.io.IOException
Read a NUL terminated ISO-8859-1 string.

Returns:
A String
Throws:
java.io.IOException - If EOF is reached

readTTFString

public final java.lang.String readTTFString(int len)
                                     throws java.io.IOException
Read an ISO-8859-1 string of len bytes.

Parameters:
len - The length of the string to read
Returns:
A String
Throws:
java.io.IOException - If EOF is reached

readTTFString

public final java.lang.String readTTFString(int len,
                                            int encodingID)
                                     throws java.io.IOException
Read an ISO-8859-1 string of len bytes.

Parameters:
len - The length of the string to read
encodingID - the string encoding id (presently ignored; always uses UTF-16BE)
Returns:
A String
Throws:
java.io.IOException - If EOF is reached

getBytes

public byte[] getBytes(int offset,
                       int length)
                throws java.io.IOException
Return a copy of the internal array

Parameters:
offset - The absolute offset to start reading from
length - The number of bytes to read
Returns:
An array of bytes
Throws:
java.io.IOException - if out of bounds

getAllBytes

public byte[] getAllBytes()
Returns the full byte array representation of the file.

Returns:
byte array.

fop 1.1

Copyright 1999-2012 The Apache Software Foundation. All Rights Reserved.