org.apache.poi.hslf.usermodel

## Class HSLFFontInfo

- java.lang.Object
- - org.apache.poi.hslf.usermodel.HSLFFontInfo

- All Implemented Interfaces:
    FontInfo

      public class HSLFFontInfo
      extends java.lang.Object
      implements FontInfo

  Represents a Font used in a presentation.

  In PowerPoint Font is a shared resource and can be shared among text object in the presentation.

  Since:
    POI 3.17-beta2

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `static class` | `HSLFFontInfo.FontRenderType`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `HSLFFontInfo(FontEntityAtom fontAtom)` Creates a new instance of HSLFFontInfo and initialize it from the supplied font atom
    `HSLFFontInfo(FontInfo fontInfo)`
    `HSLFFontInfo(java.lang.String typeface)` Creates a new instance of HSLFFontInfo with more or sensible defaults.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addFacet(FontEmbeddedData facet)`
    `FontEntityAtom` | `createRecord()`
    `FontCharset` | `getCharset()`
    `java.util.List<FontEmbeddedData>` | `getFacets()` If font facets are embedded in the document, return the list of embedded facets.
    `FontFamily` | `getFamily()`
    `FontEntityAtom` | `getFontEntityAtom()`
    `java.lang.Integer` | `getIndex()` Get the index within the collection of Font objects
    `FontPitch` | `getPitch()`
    `HSLFFontInfo.FontRenderType` | `getRenderType()`
    `java.lang.String` | `getTypeface()`
    `boolean` | `isEmbedSubsetted()`
    `boolean` | `isFontSubstitutable()`
    `void` | `setCharset(FontCharset charset)` Sets the charset
    `void` | `setEmbedSubsetted(boolean embedSubset)`
    `void` | `setFamily(FontFamily family)` Sets the font family class
    `void` | `setFontSubstitutable(boolean isSubstitutable)`
    `void` | `setIndex(int index)` Sets the index within the collection of Font objects
    `void` | `setPitch(FontPitch pitch)` Set the font pitch
    `void` | `setRenderType(HSLFFontInfo.FontRenderType renderType)`
    `void` | `setTypeface(java.lang.String typeface)` Sets the font name

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

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

    - ### Methods inherited from interface org.apache.poi.common.usermodel.fonts.FontInfo

      `getPanose, setPanose`

- - ### Constructor Detail

    - #### HSLFFontInfo

          public HSLFFontInfo(java.lang.String typeface)

      Creates a new instance of HSLFFontInfo with more or sensible defaults.

      If you don't use default fonts (see `HSLFFontInfoPredefined`) then the results of the font substitution will be better, if you also specify the other properties.

      Parameters:
        `typeface` - the font name

    - #### HSLFFontInfo

          public HSLFFontInfo(FontEntityAtom fontAtom)

      Creates a new instance of HSLFFontInfo and initialize it from the supplied font atom

    - #### HSLFFontInfo

          public HSLFFontInfo(FontInfo fontInfo)

  - ### Method Detail

    - #### getIndex

          public java.lang.Integer getIndex()

      Description copied from interface: `FontInfo`
      Get the index within the collection of Font objects
      Specified by:
        `getIndex` in interface `FontInfo`
      Returns:
        unique index number of the underlying record this Font represents (probably you don't care unless you're comparing which one is which)

    - #### setIndex

          public void setIndex(int index)

      Description copied from interface: `FontInfo`
      Sets the index within the collection of Font objects
      Specified by:
        `setIndex` in interface `FontInfo`
      Parameters:
        `index` - the index within the collection of Font objects

    - #### getTypeface

          public java.lang.String getTypeface()

      Specified by:
        `getTypeface` in interface `FontInfo`
      Returns:
        the full name of the font, i.e. font family + type face

    - #### setTypeface

          public void setTypeface(java.lang.String typeface)

      Description copied from interface: `FontInfo`
      Sets the font name
      Specified by:
        `setTypeface` in interface `FontInfo`
      Parameters:
        `typeface` - the full name of the font, when `null` removes the font definition - removal is implementation specific

    - #### setCharset

          public void setCharset(FontCharset charset)

      Description copied from interface: `FontInfo`
      Sets the charset
      Specified by:
        `setCharset` in interface `FontInfo`
      Parameters:
        `charset` - the charset

    - #### getCharset

          public FontCharset getCharset()

      Specified by:
        `getCharset` in interface `FontInfo`
      Returns:
        the font charset

    - #### getFamily

          public FontFamily getFamily()

      Specified by:
        `getFamily` in interface `FontInfo`
      Returns:
        the family class

    - #### setFamily

          public void setFamily(FontFamily family)

      Description copied from interface: `FontInfo`
      Sets the font family class
      Specified by:
        `setFamily` in interface `FontInfo`
      Parameters:
        `family` - the font family class

    - #### getPitch

          public FontPitch getPitch()

      Specified by:
        `getPitch` in interface `FontInfo`
      Returns:
        the font pitch or `null` if unsupported

    - #### setPitch

          public void setPitch(FontPitch pitch)

      Description copied from interface: `FontInfo`
      Set the font pitch
      Specified by:
        `setPitch` in interface `FontInfo`
      Parameters:
        `pitch` - the font pitch

    - #### getRenderType

          public HSLFFontInfo.FontRenderType getRenderType()

    - #### setRenderType

          public void setRenderType(HSLFFontInfo.FontRenderType renderType)

    - #### isEmbedSubsetted

          public boolean isEmbedSubsetted()

    - #### setEmbedSubsetted

          public void setEmbedSubsetted(boolean embedSubset)

    - #### isFontSubstitutable

          public boolean isFontSubstitutable()

    - #### setFontSubstitutable

          public void setFontSubstitutable(boolean isSubstitutable)

    - #### createRecord

          public FontEntityAtom createRecord()

    - #### addFacet

          public void addFacet(FontEmbeddedData facet)

    - #### getFacets

          public java.util.List<FontEmbeddedData> getFacets()

      Description copied from interface: `FontInfo`
      If font facets are embedded in the document, return the list of embedded facets. The font embedding is experimental, therefore the API can change.
      Specified by:
        `getFacets` in interface `FontInfo`
      Returns:
        the list of embedded EOT font data

    - #### getFontEntityAtom

          @Internal
          public FontEntityAtom getFontEntityAtom()

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