## org.apache.poi.hssf.record
Class FontRecord

    java.lang.Object
      org.apache.poi.hssf.record.RecordBase
          org.apache.poi.hssf.record.Record
              org.apache.poi.hssf.record.StandardRecord
                  org.apache.poi.hssf.record.FontRecord

    public final class FontRecord

extends StandardRecord

Title: Font Record (0x0031)

- describes a font in the workbook (index = 0-3,5-infinity - skip 4)

Description: An element in the Font Table

REFERENCE: PG 315 Microsoft Excel 97 Developer's Kit (ISBN: 1-57231-498-2)

Author:
  Andrew C. Oliver (acoliver at apache dot org)

Field Summary
`static short` `sid`
`static short` `SS_NONE`
`static short` `SS_SUB`
`static short` `SS_SUPER`
`static byte` `U_DOUBLE`
`static byte` `U_DOUBLE_ACCOUNTING`
`static byte` `U_NONE`
`static byte` `U_SINGLE`
`static byte` `U_SINGLE_ACCOUNTING`

Constructor Summary
`FontRecord()`
`FontRecord(RecordInputStream in)`

Method Summary
`void` `cloneStyleFrom(FontRecord source)` Clones all the font style information from another FontRecord, onto this one.
`short` `getAttributes()` get the font attributes (see individual bit getters that reference this method)
`short` `getBoldWeight()` get the bold weight for this font (100-1000dec or 0x64-0x3e8).
`byte` `getCharset()` get the character set
`short` `getColorPaletteIndex()` get the font's color palette index
`protected int` `getDataSize()`
`byte` `getFamily()` get the font family (TODO)
`short` `getFontHeight()` gets the height of the font in 1/20th point units
`java.lang.String` `getFontName()` get the name of the font
`short` `getSid()` return the non static version of the id for this record.
`short` `getSuperSubScript()` get the type of super or subscript for the font
`byte` `getUnderline()` get the type of underlining for the font
`int` `hashCode()`
`boolean` `isItalic()` get whether the font is to be italics or not
`boolean` `isMacoutlined()` whether to use the mac outline font style thing (mac only) - Some mac person should comment this instead of me doing it (since I have no idea)
`boolean` `isMacshadowed()` whether to use the mac shado font style thing (mac only) - Some mac person should comment this instead of me doing it (since I have no idea)
`boolean` `isStruckout()` get whether the font is to be stricken out or not
`boolean` `sameProperties(FontRecord other)` Does this FontRecord have all the same font properties as the supplied FontRecord? Note that `Object.equals(Object)` will check for exact objects, while this will check for exact contents, because normally the font record's position makes a big difference too.
`void` `serialize(LittleEndianOutput out)` Write the data content of this BIFF record.
`void` `setAttributes(short attributes)` set the font attributes (see individual bit setters that reference this method)
`void` `setBoldWeight(short bw)` set the bold weight for this font (100-1000dec or 0x64-0x3e8).
`void` `setCharset(byte charset)` set the character set
`void` `setColorPaletteIndex(short cpi)` set the font's color palette index
`void` `setFamily(byte f)` set the font family (TODO)
`void` `setFontHeight(short height)` sets the height of the font in 1/20th point units
`void` `setFontName(java.lang.String fn)` set the name of the font
`void` `setItalic(boolean italics)` set the font to be italics or not
`void` `setMacoutline(boolean mac)` whether to use the mac outline font style thing (mac only) - Some mac person should comment this instead of me doing it (since I have no idea)
`void` `setMacshadow(boolean mac)` whether to use the mac shado font style thing (mac only) - Some mac person should comment this instead of me doing it (since I have no idea)
`void` `setStrikeout(boolean strike)` set the font to be stricken out or not
`void` `setSuperSubScript(short sss)` set the type of super or subscript for the font
`void` `setUnderline(byte u)` set the type of underlining for the font
`java.lang.String` `toString()` get a string representation of the record (for biffview/debugging)

Methods inherited from class org.apache.poi.hssf.record.StandardRecord
`getRecordSize, serialize`

Methods inherited from class org.apache.poi.hssf.record.Record
`clone, cloneViaReserialise, serialize`

Methods inherited from class java.lang.Object
`equals, finalize, getClass, notify, notifyAll, wait, wait, wait`

Field Detail

### sid

    public static final short sid

See Also:
  Constant Field Values

### SS_NONE

    public static final short SS_NONE

See Also:
  Constant Field Values

### SS_SUPER

    public static final short SS_SUPER

See Also:
  Constant Field Values

### SS_SUB

    public static final short SS_SUB

See Also:
  Constant Field Values

### U_NONE

    public static final byte U_NONE

See Also:
  Constant Field Values

### U_SINGLE

    public static final byte U_SINGLE

See Also:
  Constant Field Values

### U_DOUBLE

    public static final byte U_DOUBLE

See Also:
  Constant Field Values

### U_SINGLE_ACCOUNTING

    public static final byte U_SINGLE_ACCOUNTING

See Also:
  Constant Field Values

### U_DOUBLE_ACCOUNTING

    public static final byte U_DOUBLE_ACCOUNTING

See Also:
  Constant Field Values

Constructor Detail

### FontRecord

    public FontRecord()

### FontRecord

    public FontRecord(RecordInputStream in)

Method Detail

### setFontHeight

    public void setFontHeight(short height)

  sets the height of the font in 1/20th point units

  Parameters:
    `height` - fontheight (in points/20)

### setAttributes

    public void setAttributes(short attributes)

  set the font attributes (see individual bit setters that reference this method)

  Parameters:
    `attributes` - the bitmask to set

### setItalic

    public void setItalic(boolean italics)

  set the font to be italics or not

  Parameters:
    `italics` - - whether the font is italics or not
  See Also:
    `setAttributes(short)`

### setStrikeout

    public void setStrikeout(boolean strike)

  set the font to be stricken out or not

  Parameters:
    `strike` - - whether the font is stricken out or not
  See Also:
    `setAttributes(short)`

### setMacoutline

    public void setMacoutline(boolean mac)

  whether to use the mac outline font style thing (mac only) - Some mac person should comment this instead of me doing it (since I have no idea)

  Parameters:
    `mac` - - whether to do that mac font outline thing or not
  See Also:
    `setAttributes(short)`

### setMacshadow

    public void setMacshadow(boolean mac)

  whether to use the mac shado font style thing (mac only) - Some mac person should comment this instead of me doing it (since I have no idea)

  Parameters:
    `mac` - - whether to do that mac font shadow thing or not
  See Also:
    `setAttributes(short)`

### setColorPaletteIndex

    public void setColorPaletteIndex(short cpi)

  set the font's color palette index

  Parameters:
    `cpi` - - font color index

### setBoldWeight

    public void setBoldWeight(short bw)

  set the bold weight for this font (100-1000dec or 0x64-0x3e8). Default is 0x190 for normal and 0x2bc for bold

  Parameters:
    `bw` - - a number between 100-1000 for the fonts "boldness"

### setSuperSubScript

    public void setSuperSubScript(short sss)

  set the type of super or subscript for the font

  Parameters:
    `sss` - super or subscript option
  See Also:
    `SS_NONE`, `SS_SUPER`, `SS_SUB`

### setUnderline

    public void setUnderline(byte u)

  set the type of underlining for the font

  Parameters:
    `u` - super or subscript option
  See Also:
    `U_NONE`, `U_SINGLE`, `U_DOUBLE`, `U_SINGLE_ACCOUNTING`, `U_DOUBLE_ACCOUNTING`

### setFamily

    public void setFamily(byte f)

  set the font family (TODO)

  Parameters:
    `f` - family

### setCharset

    public void setCharset(byte charset)

  set the character set

  Parameters:
    `charset` - - character set

### setFontName

    public void setFontName(java.lang.String fn)

  set the name of the font

  Parameters:
    `fn` - - name of the font (i.e. "Arial")

### getFontHeight

    public short getFontHeight()

  gets the height of the font in 1/20th point units

  Returns:
    fontheight (in points/20)

### getAttributes

    public short getAttributes()

  get the font attributes (see individual bit getters that reference this method)

  Returns:
    attribute - the bitmask

### isItalic

    public boolean isItalic()

  get whether the font is to be italics or not

  Returns:
    italics - whether the font is italics or not
  See Also:
    `getAttributes()`

### isStruckout

    public boolean isStruckout()

  get whether the font is to be stricken out or not

  Returns:
    strike - whether the font is stricken out or not
  See Also:
    `getAttributes()`

### isMacoutlined

    public boolean isMacoutlined()

  whether to use the mac outline font style thing (mac only) - Some mac person should comment this instead of me doing it (since I have no idea)

  Returns:
    mac - whether to do that mac font outline thing or not
  See Also:
    `getAttributes()`

### isMacshadowed

    public boolean isMacshadowed()

  whether to use the mac shado font style thing (mac only) - Some mac person should comment this instead of me doing it (since I have no idea)

  Returns:
    mac - whether to do that mac font shadow thing or not
  See Also:
    `getAttributes()`

### getColorPaletteIndex

    public short getColorPaletteIndex()

  get the font's color palette index

  Returns:
    cpi - font color index

### getBoldWeight

    public short getBoldWeight()

  get the bold weight for this font (100-1000dec or 0x64-0x3e8). Default is 0x190 for normal and 0x2bc for bold

  Returns:
    bw - a number between 100-1000 for the fonts "boldness"

### getSuperSubScript

    public short getSuperSubScript()

  get the type of super or subscript for the font

  Returns:
    super or subscript option
  See Also:
    `SS_NONE`, `SS_SUPER`, `SS_SUB`

### getUnderline

    public byte getUnderline()

  get the type of underlining for the font

  Returns:
    super or subscript option
  See Also:
    `U_NONE`, `U_SINGLE`, `U_DOUBLE`, `U_SINGLE_ACCOUNTING`, `U_DOUBLE_ACCOUNTING`

### getFamily

    public byte getFamily()

  get the font family (TODO)

  Returns:
    family

### getCharset

    public byte getCharset()

  get the character set

  Returns:
    charset - character set

### getFontName

    public java.lang.String getFontName()

  get the name of the font

  Returns:
    fn - name of the font (i.e. "Arial")

### toString

    public java.lang.String toString()

  Description copied from class: `Record`
  get a string representation of the record (for biffview/debugging)

  Overrides:
    `toString` in class `Record`

### serialize

    public void serialize(LittleEndianOutput out)

  Description copied from class: `StandardRecord`
  Write the data content of this BIFF record. The 'ushort sid' and 'ushort size' header fields have already been written by the superclass.
  The number of bytes written must equal the record size reported by `RecordBase.getRecordSize()`} minus four ( record header consiting of a 'ushort sid' and 'ushort reclength' has already been written by thye superclass).

  Specified by:
    `serialize` in class `StandardRecord`

### getDataSize

    protected int getDataSize()

  Specified by:
    `getDataSize` in class `StandardRecord`

### getSid

    public short getSid()

  Description copied from class: `Record`
  return the non static version of the id for this record.

  Specified by:
    `getSid` in class `Record`

### cloneStyleFrom

    public void cloneStyleFrom(FontRecord source)

  Clones all the font style information from another FontRecord, onto this one. This will then hold all the same font style options.

### hashCode

    public int hashCode()

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

### sameProperties

    public boolean sameProperties(FontRecord other)

  Does this FontRecord have all the same font properties as the supplied FontRecord? Note that `Object.equals(Object)` will check for exact objects, while this will check for exact contents, because normally the font record's position makes a big difference too.

Copyright 2012 The Apache Software Foundation or its licensors, as applicable.