org.apache.poi.xwpf.usermodel

## Class XWPFStyles

- java.lang.Object
- - org.apache.poi.ooxml.POIXMLDocumentPart
  - - org.apache.poi.xwpf.usermodel.XWPFStyles

-     public class XWPFStyles
      extends POIXMLDocumentPart

  Holds details of built-in, default and user styles, which apply to tables / paragraphs / lists etc. Text within one of those with custom stylings has the style information stored in the `XWPFRun`

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class org.apache.poi.ooxml.POIXMLDocumentPart

      `POIXMLDocumentPart.RelationPart`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `XWPFStyles()` Construct XWPFStyles from scratch for a new document.
    `XWPFStyles(PackagePart part)` Construct XWPFStyles from a package part

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addStyle(XWPFStyle style)` add a style to the document
    `protected void` | `commit()` Save the content in the underlying package part.
    `protected void` | `ensureDocDefaults()`
    `protected org.openxmlformats.schemas.wordprocessingml.x2006.main.CTLanguage` | `getCTLanguage()`
    `XWPFDefaultParagraphStyle` | `getDefaultParagraphStyle()` Get the default paragraph style which applies to the document
    `XWPFDefaultRunStyle` | `getDefaultRunStyle()` Get the default style which applies text runs in the document
    `XWPFLatentStyles` | `getLatentStyles()` Get the definition of all the Latent Styles
    `int` | `getNumberOfStyles()`
    `XWPFStyle` | `getStyle(java.lang.String styleID)` Get style by a styleID
    `XWPFStyle` | `getStyleWithName(java.lang.String styleName)` Get the style with the specified name, if any.
    `XWPFStyle` | `getStyleWithSameName(XWPFStyle style)` get the style with the same name if this style is not existing, return null
    `java.util.List<XWPFStyle>` | `getUsedStyleList(XWPFStyle style)` get the styles which are related to the parameter style and their relatives this method can be used to copy all styles from one document to another document
    `protected void` | `onDocumentRead()` Read document
    `void` | `setDefaultFonts(org.openxmlformats.schemas.wordprocessingml.x2006.main.CTFonts fonts)` Sets the default font on ctStyles DocDefaults parameter TODO Replace this with specific setters for each type, possibly on XWPFDefaultRunStyle
    `void` | `setEastAsia(java.lang.String strEastAsia)` Sets the default East Asia spelling language on ctStyles DocDefaults parameter
    `void` | `setSpellingLanguage(java.lang.String strSpellingLanguage)` Sets the default spelling language on ctStyles DocDefaults parameter
    `void` | `setStyles(org.openxmlformats.schemas.wordprocessingml.x2006.main.CTStyles styles)` Sets the ctStyles
    `boolean` | `styleExist(java.lang.String styleID)` checks whether style with styleID exist

    - ### Methods inherited from class org.apache.poi.ooxml.POIXMLDocumentPart

      `_invokeOnDocumentRead, addRelation, createRelationship, createRelationship, createRelationship, getNextPartNumber, getPackagePart, getParent, getRelationById, getRelationId, getRelationPartById, getRelationParts, getRelations, getTargetPart, isCommited, isCommitted, onDocumentCreate, onDocumentRemove, onSave, prepareForCommit, read, rebase, removeRelation, removeRelation, removeRelation, setCommited, setCommitted, toString`

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

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

- - ### Constructor Detail

    - #### XWPFStyles

          public XWPFStyles(PackagePart part)

      Construct XWPFStyles from a package part
      Parameters:
        `part` - the package part holding the data of the styles,
      Since:
        POI 3.14-Beta1

    - #### XWPFStyles

          public XWPFStyles()

      Construct XWPFStyles from scratch for a new document.

  - ### Method Detail

    - #### onDocumentRead

          protected void onDocumentRead()
                                 throws java.io.IOException

      Read document
      Overrides:
        `onDocumentRead` in class `POIXMLDocumentPart`
      Throws:
        `java.io.IOException` - a subclass may throw an IOException when a document is read

    - #### commit

          protected void commit()
                         throws java.io.IOException

      Description copied from class: `POIXMLDocumentPart`
      Save the content in the underlying package part. Default implementation is empty meaning that the package part is left unmodified.

      Sub-classes should override and add logic to marshal the "model" into Ooxml4J.

      For example, the code saving a generic XML entry may look as follows:

           protected void commit() throws IOException {
             PackagePart part = getPackagePart();
             OutputStream out = part.getOutputStream();
             XmlObject bean = getXmlBean(); //the "model" which holds changes in memory
             bean.save(out, DEFAULT_XML_OPTIONS);
             out.close();
           }

      Overrides:
        `commit` in class `POIXMLDocumentPart`
      Throws:
        `java.io.IOException` - a subclass may throw an IOException if the changes can't be committed

    - #### ensureDocDefaults

          protected void ensureDocDefaults()

    - #### setStyles

          public void setStyles(org.openxmlformats.schemas.wordprocessingml.x2006.main.CTStyles styles)

      Sets the ctStyles
      Parameters:
        `styles` -

    - #### styleExist

          public boolean styleExist(java.lang.String styleID)

      checks whether style with styleID exist
      Parameters:
        `styleID` - styleID of the Style in the style-Document
      Returns:
        true if style exist, false if style not exist

    - #### addStyle

          public void addStyle(XWPFStyle style)

      add a style to the document
      Parameters:
        `style` -
      Throws:
        `java.io.IOException`

    - #### getStyle

          public XWPFStyle getStyle(java.lang.String styleID)

      Get style by a styleID
      Parameters:
        `styleID` - styleID of the searched style
      Returns:
        style

    - #### getNumberOfStyles

          public int getNumberOfStyles()

    - #### getUsedStyleList

          public java.util.List<XWPFStyle> getUsedStyleList(XWPFStyle style)

      get the styles which are related to the parameter style and their relatives this method can be used to copy all styles from one document to another document
      Parameters:
        `style` -
      Returns:
        a list of all styles which were used by this method

    - #### getCTLanguage

          protected org.openxmlformats.schemas.wordprocessingml.x2006.main.CTLanguage getCTLanguage()

    - #### setSpellingLanguage

          public void setSpellingLanguage(java.lang.String strSpellingLanguage)

      Sets the default spelling language on ctStyles DocDefaults parameter
      Parameters:
        `strSpellingLanguage` -

    - #### setEastAsia

          public void setEastAsia(java.lang.String strEastAsia)

      Sets the default East Asia spelling language on ctStyles DocDefaults parameter
      Parameters:
        `strEastAsia` -

    - #### setDefaultFonts

          public void setDefaultFonts(org.openxmlformats.schemas.wordprocessingml.x2006.main.CTFonts fonts)

      Sets the default font on ctStyles DocDefaults parameter TODO Replace this with specific setters for each type, possibly on XWPFDefaultRunStyle

    - #### getStyleWithSameName

          public XWPFStyle getStyleWithSameName(XWPFStyle style)

      get the style with the same name if this style is not existing, return null

    - #### getDefaultRunStyle

          public XWPFDefaultRunStyle getDefaultRunStyle()

      Get the default style which applies text runs in the document

    - #### getDefaultParagraphStyle

          public XWPFDefaultParagraphStyle getDefaultParagraphStyle()

      Get the default paragraph style which applies to the document

    - #### getLatentStyles

          public XWPFLatentStyles getLatentStyles()

      Get the definition of all the Latent Styles

    - #### getStyleWithName

          public XWPFStyle getStyleWithName(java.lang.String styleName)

      Get the style with the specified name, if any.
      Parameters:
        `styleName` - The name of the style to get, e.g., "Heading 1"
      Returns:
        `XWPFStyle` with the specified name, or null if not found.

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