Class PSTTFGenerator

java.lang.Object
org.apache.fop.render.ps.fonts.PSTTFGenerator

public class PSTTFGenerator extends Object
This is a wrapper for PSGenerator that contains some members specific for streaming TrueType fonts to a PostScript document.
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final int
    The buffer is used to store the font file in an array of hex-encoded strings.
  • Constructor Summary

    Constructors
    Constructor
    Description
    PSTTFGenerator(org.apache.xmlgraphics.ps.PSGenerator gen)
    Creates a new instance wrapping the given generator.
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    Finishes writing a string by appending '00' and '>' to the end.
    void
    Writes the '<' character that starts a string.
    void
    streamBytes(byte[] byteArray, int offset, int length)
    Writes bytes from the given byte array to the output.
    void
    Writes the given string to the output.
    void
    Writes the given string to the output, followed by a newline.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • MAX_BUFFER_SIZE

      public static final int MAX_BUFFER_SIZE
      The buffer is used to store the font file in an array of hex-encoded strings. Strings are limited to 65535 characters, string will start with a newline, 2 characters are needed to hex-encode each byte.
      See Also:
  • Constructor Details

    • PSTTFGenerator

      public PSTTFGenerator(org.apache.xmlgraphics.ps.PSGenerator gen)
      Creates a new instance wrapping the given generator.
      Parameters:
      gen - the PSGenerator to wrap
  • Method Details

    • startString

      public void startString() throws IOException
      Writes the '<' character that starts a string.
      Throws:
      IOException
    • write

      public void write(String cmd) throws IOException
      Writes the given string to the output.
      Parameters:
      cmd - a string
      Throws:
      IOException
    • writeln

      public void writeln(String cmd) throws IOException
      Writes the given string to the output, followed by a newline.
      Parameters:
      cmd - a string
      Throws:
      IOException
    • streamBytes

      public void streamBytes(byte[] byteArray, int offset, int length) throws IOException
      Writes bytes from the given byte array to the output.
      Parameters:
      byteArray - byte[] a byte array
      offset - the position in the byte array where the streaming must start
      length - the number of bytes to stream. This MUST be less than MAX_BUFFER_SIZE - 1 since strings are suffixed by '00' (see Section 4.2 of Adobe Technical Note #5012, The Type 42 Font Format Specification.).
      Throws:
      IOException
    • endString

      public void endString() throws IOException
      Finishes writing a string by appending '00' and '>' to the end.
      Throws:
      IOException