AttributedString Class Reference
juce_graphics » fonts

A text string with a set of colour/font settings that are associated with sub-ranges of the text. More...

## Classes

class | Attribute
| An attribute that has been applied to a range of characters in an AttributedString. More...

## Public Types

enum | WordWrap { none, byWord, byChar }
| Types of word-wrap behaviour. More...
enum | ReadingDirection { natural, leftToRight, rightToLeft }
| Types of reading direction that can be used. More...

## Public Member Functions

| AttributedString ()=default
| Creates an empty attributed string. More...
| AttributedString (const String &newString)
| Creates an attributed string with the given text. More...
| AttributedString (const AttributedString &)=default
AttributedString & | operator= (const AttributedString &)=default
| AttributedString (AttributedString &&) noexcept=default
AttributedString & | operator= (AttributedString &&) noexcept=default
const String & | getText () const noexcept
| Returns the complete text of this attributed string. More...
void | setText (const String &newText)
| Replaces all the text. More...
void | append (const String &textToAppend)
| Appends some text (with a default font and colour). More...
void | append (const String &textToAppend, const Font &font)
| Appends some text, with a specified font, and the default colour (black). More...
void | append (const String &textToAppend, Colour colour)
| Appends some text, with a specified colour, and the default font. More...
void | append (const String &textToAppend, const Font &font, Colour colour)
| Appends some text, with a specified font and colour. More...
void | append (const AttributedString &other)
| Appends another AttributedString to this one. More...
void | clear ()
| Resets the string, clearing all text and attributes. More...
void | draw (Graphics &g, const Rectangle< float > &area) const
| Draws this string within the given area. More...
Justification | getJustification () const noexcept
| Returns the justification that should be used for laying-out the text. More...
void | setJustification (Justification newJustification) noexcept
| Sets the justification that should be used for laying-out the text. More...
WordWrap | getWordWrap () const noexcept
| Returns the word-wrapping behaviour. More...
void | setWordWrap (WordWrap newWordWrap) noexcept
| Sets the word-wrapping behaviour. More...
ReadingDirection | getReadingDirection () const noexcept
| Returns the reading direction for the text. More...
void | setReadingDirection (ReadingDirection newReadingDirection) noexcept
| Sets the reading direction that should be used for the text. More...
float | getLineSpacing () const noexcept
| Returns the extra line-spacing distance. More...
void | setLineSpacing (float newLineSpacing) noexcept
| Sets an extra line-spacing distance. More...
int | getNumAttributes () const noexcept
| Returns the number of attributes that have been added to this string. More...
const Attribute & | getAttribute (int index) const noexcept
| Returns one of the string's attributes. More...
void | setColour (Range< int > range, Colour colour)
| Adds a colour attribute for the specified range. More...
void | setColour (Colour colour)
| Removes all existing colour attributes, and applies this colour to the whole string. More...
void | setFont (Range< int > range, const Font &font)
| Adds a font attribute for the specified range. More...
void | setFont (const Font &font)
| Removes all existing font attributes, and applies this font to the whole string. More...

## Detailed Description

A text string with a set of colour/font settings that are associated with sub-ranges of the text.

An attributed string lets you create a string with varied fonts, colours, word-wrapping, layout, etc., and draw it using AttributedString::draw().

See also
  TextLayout

## Member Enumeration Documentation

## WordWrap

enum AttributedString::WordWrap

Types of word-wrap behaviour.

See also
  getWordWrap, setWordWrap

Enumerator
none | No word-wrapping: lines extend indefinitely.
byWord | Lines are wrapped on a word boundary.
byChar | Lines are wrapped on a character boundary.

## ReadingDirection

enum AttributedString::ReadingDirection

Types of reading direction that can be used.

See also
  getReadingDirection, setReadingDirection

Enumerator
natural |
leftToRight |
rightToLeft |

## Constructor & Destructor Documentation

## AttributedString() [1/4]

AttributedString::AttributedString | ( |  | ) |

default

Creates an empty attributed string.

## AttributedString() [2/4]

AttributedString::AttributedString | ( | const String & | newString | ) |

explicit

Creates an attributed string with the given text.

## AttributedString() [3/4]

AttributedString::AttributedString | ( | const AttributedString & |  | ) |

default

## AttributedString() [4/4]

AttributedString::AttributedString | ( | AttributedString && |  | ) |

default noexcept

## Member Function Documentation

## operator=() [1/2]

AttributedString& AttributedString::operator= | ( | const AttributedString & |  | ) |

default

## operator=() [2/2]

AttributedString& AttributedString::operator= | ( | AttributedString && |  | ) |

default noexcept

## getText()

const String& AttributedString::getText | ( |  | ) | const

noexcept

Returns the complete text of this attributed string.

## setText()

void AttributedString::setText | ( | const String & | newText | ) |

Replaces all the text.

This will change the text, but won't affect any of the colour or font attributes that have been added.

## append() [1/5]

void AttributedString::append | ( | const String & | textToAppend | ) |

Appends some text (with a default font and colour).

## append() [2/5]

void AttributedString::append | ( | const String & | textToAppend,
|  | const Font & | font
| ) |  |

Appends some text, with a specified font, and the default colour (black).

## append() [3/5]

void AttributedString::append | ( | const String & | textToAppend,
|  | Colour | colour
| ) |  |

Appends some text, with a specified colour, and the default font.

## append() [4/5]

void AttributedString::append | ( | const String & | textToAppend,
|  | const Font & | font,
|  | Colour | colour
| ) |  |

Appends some text, with a specified font and colour.

## append() [5/5]

void AttributedString::append | ( | const AttributedString & | other | ) |

Appends another AttributedString to this one.

Note that this will only append the text, fonts, and colours - it won't copy any other properties such as justification, line-spacing, etc from the other object.

## clear()

void AttributedString::clear | ( |  | ) |

Resets the string, clearing all text and attributes.

Note that this won't affect global settings like the justification type, word-wrap mode, etc.

## draw()

void AttributedString::draw | ( | Graphics & | g,
|  | const Rectangle< float > & | area
| ) |  | const

Draws this string within the given area.

The layout of the string within the rectangle is controlled by the justification value passed to setJustification().

## getJustification()

Justification AttributedString::getJustification | ( |  | ) | const

noexcept

Returns the justification that should be used for laying-out the text.

This may include both vertical and horizontal flags.

## setJustification()

void AttributedString::setJustification | ( | Justification | newJustification | ) |

noexcept

Sets the justification that should be used for laying-out the text.

This may include both vertical and horizontal flags.

## getWordWrap()

WordWrap AttributedString::getWordWrap | ( |  | ) | const

noexcept

Returns the word-wrapping behaviour.

## setWordWrap()

void AttributedString::setWordWrap | ( | WordWrap | newWordWrap | ) |

noexcept

Sets the word-wrapping behaviour.

## getReadingDirection()

ReadingDirection AttributedString::getReadingDirection | ( |  | ) | const

noexcept

Returns the reading direction for the text.

## setReadingDirection()

void AttributedString::setReadingDirection | ( | ReadingDirection | newReadingDirection | ) |

noexcept

Sets the reading direction that should be used for the text.

## getLineSpacing()

float AttributedString::getLineSpacing | ( |  | ) | const

noexcept

Returns the extra line-spacing distance.

## setLineSpacing()

void AttributedString::setLineSpacing | ( | float | newLineSpacing | ) |

noexcept

Sets an extra line-spacing distance.

## getNumAttributes()

int AttributedString::getNumAttributes | ( |  | ) | const

noexcept

Returns the number of attributes that have been added to this string.

## getAttribute()

const Attribute& AttributedString::getAttribute | ( | int | index | ) | const

noexcept

Returns one of the string's attributes.

The index provided must be less than getNumAttributes(), and >= 0.

## setColour() [1/2]

void AttributedString::setColour | ( | Range< int > | range,
|  | Colour | colour
| ) |  |

Adds a colour attribute for the specified range.

## setColour() [2/2]

void AttributedString::setColour | ( | Colour | colour | ) |

Removes all existing colour attributes, and applies this colour to the whole string.

## setFont() [1/2]

void AttributedString::setFont | ( | Range< int > | range,
|  | const Font & | font
| ) |  |

Adds a font attribute for the specified range.

## setFont() [2/2]

void AttributedString::setFont | ( | const Font & | font | ) |

Removes all existing font attributes, and applies this font to the whole string.

The documentation for this class was generated from the following file:

- juce_AttributedString.h