com.sun.pdfview

## Class PDFTextFormat

- java.lang.Object
- - com.sun.pdfview.PDFTextFormat

All Implemented Interfaces:
  java.lang.Cloneable

    public class PDFTextFormat
    extends java.lang.Object
    implements java.lang.Cloneable

a class encapsulating the text state

### Constructor Summary

Constructors
Constructor and Description
`PDFTextFormat()` create a new PDFTextFormat, with initial values

### Method Summary

Methods
`void` `carriageReturn()` perform a carriage return
`void` `carriageReturn(float x, float y)` perform a carriage return by translating by x and y.
`java.lang.Object` `clone()` Clone the text format
`void` `doText(PDFPage cmds, java.lang.Object[] ary)` add some text to the page.
`void` `doText(PDFPage cmds, java.lang.String text)` add some text to the page.
`void` `end()` end a span of text
`void` `flush()` finish any unfinished words.
`float` `getCharSpacing()` get the char spacing
`PDFFont` `getFont()` get the font
`float` `getFontSize()` get the font size
`float` `getHorizontalScale()` Get the horizontal scale
`float` `getLeading()` get the leading
`int` `getMode()` Get the mode of the text
`float` `getRise()` Get the rise
`java.awt.geom.AffineTransform` `getTransform()` Get the current transform
`float` `getWordSpacing()` get the word spacing
`void` `reset()` reset the PDFTextFormat for a new run
`void` `setCharSpacing(float spc)` set the character spacing
`void` `setFont(PDFFont f, float size)` set the font and size
`void` `setHorizontalScale(float scl)` set the horizontal scale.
`void` `setLeading(float spc)` set the leading
`void` `setMatrix(float[] matrix)` set the transform matrix directly
`void` `setMode(int m)` set the mode of the text.
`void` `setRise(float spc)` set the rise
`void` `setTextFormatMode(int mode)` Set the mode from another text format mode
`void` `setWordSpacing(float spc)` set the word spacing

### Methods inherited from class java.lang.Object

`equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Constructor Detail

#### PDFTextFormat

    public PDFTextFormat()

create a new PDFTextFormat, with initial values

### Method Detail

#### reset

    public void reset()

reset the PDFTextFormat for a new run

#### end

    public void end()

end a span of text

#### getCharSpacing

    public float getCharSpacing()

get the char spacing

#### setCharSpacing

    public void setCharSpacing(float spc)

set the character spacing

#### getWordSpacing

    public float getWordSpacing()

get the word spacing

#### setWordSpacing

    public void setWordSpacing(float spc)

set the word spacing

#### getHorizontalScale

    public float getHorizontalScale()

Get the horizontal scale

Returns:
  the horizontal scale, in percent

#### setHorizontalScale

    public void setHorizontalScale(float scl)

set the horizontal scale.

Parameters:
  `scl` - the horizontal scale, in percent (100=normal)

#### getLeading

    public float getLeading()

get the leading

#### setLeading

    public void setLeading(float spc)

set the leading

#### getFont

    public PDFFont getFont()

get the font

#### getFontSize

    public float getFontSize()

get the font size

#### setFont

    public void setFont(PDFFont f,
               float size)

set the font and size

#### getMode

    public int getMode()

Get the mode of the text

#### setMode

    public void setMode(int m)

set the mode of the text. The correspondence of m to mode is show in the following table. m is a value from 0-7 in binary: 000 Fill 001 Stroke 010 Fill + Stroke 011 Nothing 100 Fill + Clip 101 Stroke + Clip 110 Fill + Stroke + Clip 111 Clip Therefore: Fill corresponds to the low bit being 0; Clip corresponds to the hight bit being 1; and Stroke corresponds to the middle xor low bit being 1.

#### setTextFormatMode

    public void setTextFormatMode(int mode)

Set the mode from another text format mode

Parameters:
  `mode` - the text render mode using the codes from PDFShapeCmd and not the wacky PDF codes

#### getRise

    public float getRise()

Get the rise

#### setRise

    public void setRise(float spc)

set the rise

#### carriageReturn

    public void carriageReturn()

perform a carriage return

#### carriageReturn

    public void carriageReturn(float x,
                      float y)

perform a carriage return by translating by x and y. The next carriage return will be relative to the new location.

#### getTransform

    public java.awt.geom.AffineTransform getTransform()

Get the current transform

#### setMatrix

    public void setMatrix(float[] matrix)

set the transform matrix directly

#### doText

    public void doText(PDFPage cmds,
              java.lang.String text)

add some text to the page.

Parameters:
  `cmds` - the PDFPage to add the commands to
  `text` - the text to add

#### doText

    public void doText(PDFPage cmds,
              java.lang.Object[] ary)
                throws PDFParseException

add some text to the page.

Parameters:
  `cmds` - the PDFPage to add the commands to
  `ary` - an array of Strings and Doubles, where the Strings represent text to be added, and the Doubles represent kerning amounts.
Throws:
  `PDFParseException`

#### flush

    public void flush()

finish any unfinished words. TODO: write this!

#### clone

    public java.lang.Object clone()

Clone the text format

Overrides:
  `clone` in class `java.lang.Object`