# LineBreak

Artifact: [androidx.compose.ui:ui-text](https://developer.android.com/jetpack/androidx/releases/compose-ui) [View Source](https://cs.android.com/search?q=file:androidx/compose/ui/text/style/LineBreak.+class:androidx.compose.ui.text.style.LineBreak) Added in [1.3.0](https://developer.android.com/jetpack/androidx/releases/compose-ui#1.3.0) Common/AllAndroid/JVM
- Cmn

  ```
  value class LineBreak
  ```

*** ** * ** ***

Configures line breaking behavior when text wraps automatically to fit its container.

Offers presets for common use cases:

|---|---|
| Preset | Use Case |
| `https://developer.android.com/reference/kotlin/androidx/compose/ui/text/style/LineBreak#Simple()` | Text fields and inputs |
| `https://developer.android.com/reference/kotlin/androidx/compose/ui/text/style/LineBreak#Heading()` | Titles and short text |
| `https://developer.android.com/reference/kotlin/androidx/compose/ui/text/style/LineBreak#Paragraph()` | Body text and long passages |

```kotlin
import androidx.compose.material3.Text
import androidx.compose.ui.text.TextStyle
import androidx.compose.ui.text.style.LineBreak
import androidx.compose.ui.unit.sp

Text(
    text = "Title of an article",
    style = TextStyle(fontSize = 20.sp, lineBreak = LineBreak.Heading),
)

Text(
    text = "A long paragraph in an article",
    style = TextStyle(lineBreak = LineBreak.Paragraph),
)
```

Customize Android behavior using:

- `Strategy`: Balances layout speed against formatting quality (e.g., greedy vs. paragraph-optimized breaking).

- `Strictness`: Adjusts line-breaking rules for East Asian languages (Chinese, Japanese, and Korean), determining which characters can start or end a line.

- `WordBreak`: Specifies word boundary rules, such as default spacing-based breaking or phrase-based breaking (ideal for titles).

```kotlin
import androidx.compose.material3.Text
import androidx.compose.ui.text.TextStyle
import androidx.compose.ui.text.style.LineBreak
import androidx.compose.ui.unit.sp

val customTitleLineBreak =
    LineBreak(
        strategy = LineBreak.Strategy.Simple,
        strictness = LineBreak.Strictness.Loose,
        wordBreak = LineBreak.WordBreak.Default,
    )

Text(
    text = "Title of an article",
    style = TextStyle(fontSize = 20.sp, lineBreak = customTitleLineBreak),
)

val defaultStrictnessParagraphLineBreak =
    LineBreak.Paragraph.copy(strictness = LineBreak.Strictness.Default)

Text(
    text = "A long paragraph in an article",
    style = TextStyle(lineBreak = defaultStrictnessParagraphLineBreak),
)
```

## Summary

| ### Nested types |
|---|
| `value class https://developer.android.com/reference/kotlin/androidx/compose/ui/text/style/LineBreak.Strategy` The strategy used for line breaking. |
| `value class https://developer.android.com/reference/kotlin/androidx/compose/ui/text/style/LineBreak.Strictness` Describes the strictness of line breaking, determining before which characters line breaks can be inserted. |
| `value class https://developer.android.com/reference/kotlin/androidx/compose/ui/text/style/LineBreak.WordBreak` Describes how line breaks should be inserted within words. |

| ### Public companion properties |
|---|---|---|
| `https://developer.android.com/reference/kotlin/androidx/compose/ui/text/style/LineBreak` | `https://developer.android.com/reference/kotlin/androidx/compose/ui/text/style/LineBreak#Heading()` Looser breaking rules, suitable for short text such as titles or narrow newspaper columns. | Cmn android |
| `https://developer.android.com/reference/kotlin/androidx/compose/ui/text/style/LineBreak` | `https://developer.android.com/reference/kotlin/androidx/compose/ui/text/style/LineBreak#Paragraph()` Slower, higher quality line breaking for improved readability. | Cmn android |
| `https://developer.android.com/reference/kotlin/androidx/compose/ui/text/style/LineBreak` | `https://developer.android.com/reference/kotlin/androidx/compose/ui/text/style/LineBreak#Simple()` Basic, fast line breaking. | Cmn android |
| `https://developer.android.com/reference/kotlin/androidx/compose/ui/text/style/LineBreak` | `https://developer.android.com/reference/kotlin/androidx/compose/ui/text/style/LineBreak#Unspecified()` Represents an unset `https://developer.android.com/reference/kotlin/androidx/compose/ui/text/style/LineBreak` value. | Cmn android |

| ### Public constructors |
|---|---|
| `https://developer.android.com/reference/kotlin/androidx/compose/ui/text/style/LineBreak#LineBreak(androidx.compose.ui.text.style.LineBreak.Strategy,androidx.compose.ui.text.style.LineBreak.Strictness,androidx.compose.ui.text.style.LineBreak.WordBreak)( strategy: https://developer.android.com/reference/kotlin/androidx/compose/ui/text/style/LineBreak.Strategy, strictness: https://developer.android.com/reference/kotlin/androidx/compose/ui/text/style/LineBreak.Strictness, wordBreak: https://developer.android.com/reference/kotlin/androidx/compose/ui/text/style/LineBreak.WordBreak )` This represents a configuration for line breaking on Android, describing `https://developer.android.com/reference/kotlin/androidx/compose/ui/text/style/LineBreak.Strategy`, `https://developer.android.com/reference/kotlin/androidx/compose/ui/text/style/LineBreak.Strictness`, and `https://developer.android.com/reference/kotlin/androidx/compose/ui/text/style/LineBreak.WordBreak`. | android |

| ### Public functions |
|---|---|---|
| `https://developer.android.com/reference/kotlin/androidx/compose/ui/text/style/LineBreak` | `https://developer.android.com/reference/kotlin/androidx/compose/ui/text/style/LineBreak#copy(androidx.compose.ui.text.style.LineBreak.Strategy,androidx.compose.ui.text.style.LineBreak.Strictness,androidx.compose.ui.text.style.LineBreak.WordBreak)( strategy: https://developer.android.com/reference/kotlin/androidx/compose/ui/text/style/LineBreak.Strategy, strictness: https://developer.android.com/reference/kotlin/androidx/compose/ui/text/style/LineBreak.Strictness, wordBreak: https://developer.android.com/reference/kotlin/androidx/compose/ui/text/style/LineBreak.WordBreak )` | android |
| `open https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html` | `https://developer.android.com/reference/kotlin/androidx/compose/ui/text/style/LineBreak#toString()()` | android |

| ### Public properties |
|---|---|---|
| `https://developer.android.com/reference/kotlin/androidx/compose/ui/text/style/LineBreak.Strategy` | `https://developer.android.com/reference/kotlin/androidx/compose/ui/text/style/LineBreak#strategy()` | android |
| `https://developer.android.com/reference/kotlin/androidx/compose/ui/text/style/LineBreak.Strictness` | `https://developer.android.com/reference/kotlin/androidx/compose/ui/text/style/LineBreak#strictness()` | android |
| `https://developer.android.com/reference/kotlin/androidx/compose/ui/text/style/LineBreak.WordBreak` | `https://developer.android.com/reference/kotlin/androidx/compose/ui/text/style/LineBreak#wordBreak()` | android |

| ### Extension properties |
|---|---|---|
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` | `https://developer.android.com/reference/kotlin/androidx/compose/ui/text/style/LineBreak.https://developer.android.com/reference/kotlin/androidx/compose/ui/text/style/LineBreak#(androidx.compose.ui.text.style.LineBreak).isSpecified()` Returns `true` if it is not `https://developer.android.com/reference/kotlin/androidx/compose/ui/text/style/LineBreak#Unspecified()`. | Cmn |

## Public companion properties

### Heading

Cmn android Added in [1.3.0](https://developer.android.com/jetpack/androidx/releases/compose-ui#1.3.0)

```
val Heading: LineBreak
```

Looser breaking rules, suitable for short text such as titles or narrow newspaper columns. For longer lines of text, use `https://developer.android.com/reference/kotlin/androidx/compose/ui/text/style/LineBreak#Paragraph()` for improved readability.

### Paragraph

Cmn android Added in [1.3.0](https://developer.android.com/jetpack/androidx/releases/compose-ui#1.3.0)

```
val Paragraph: LineBreak
```

Slower, higher quality line breaking for improved readability. Suitable for larger amounts of text.

### Simple

Cmn android Added in [1.3.0](https://developer.android.com/jetpack/androidx/releases/compose-ui#1.3.0)

```
val Simple: LineBreak
```

Basic, fast line breaking. Ideal for text input fields, as it will cause minimal text reflow when editing.

### Unspecified

Cmn android Added in [1.6.0](https://developer.android.com/jetpack/androidx/releases/compose-ui#1.6.0)

```
val Unspecified: LineBreak
```

Represents an unset `https://developer.android.com/reference/kotlin/androidx/compose/ui/text/style/LineBreak` value.

## Public constructors

### LineBreak

android Added in [1.9.0](https://developer.android.com/jetpack/androidx/releases/compose-ui#1.9.0)

```
LineBreak(
    strategy: LineBreak.Strategy,
    strictness: LineBreak.Strictness,
    wordBreak: LineBreak.WordBreak
)
```

This represents a configuration for line breaking on Android, describing `https://developer.android.com/reference/kotlin/androidx/compose/ui/text/style/LineBreak.Strategy`, `https://developer.android.com/reference/kotlin/androidx/compose/ui/text/style/LineBreak.Strictness`, and `https://developer.android.com/reference/kotlin/androidx/compose/ui/text/style/LineBreak.WordBreak`.

| Parameters |
|---|---|
| `strategy: https://developer.android.com/reference/kotlin/androidx/compose/ui/text/style/LineBreak.Strategy` | defines the algorithm that inserts line breaks |
| `strictness: https://developer.android.com/reference/kotlin/androidx/compose/ui/text/style/LineBreak.Strictness` | defines the line breaking rules |
| `wordBreak: https://developer.android.com/reference/kotlin/androidx/compose/ui/text/style/LineBreak.WordBreak` | defines how words are broken |

## Public functions

### copy

android Added in [1.10.0](https://developer.android.com/jetpack/androidx/releases/compose-ui#1.10.0)

```
fun copy(
    strategy: LineBreak.Strategy = this.strategy,
    strictness: LineBreak.Strictness = this.strictness,
    wordBreak: LineBreak.WordBreak = this.wordBreak
): LineBreak
```

### toString

android

```
open fun toString(): String
```

## Public properties

### strategy

android Added in [1.3.0](https://developer.android.com/jetpack/androidx/releases/compose-ui#1.3.0)

```
val strategy: LineBreak.Strategy
```

### strictness

android Added in [1.3.0](https://developer.android.com/jetpack/androidx/releases/compose-ui#1.3.0)

```
val strictness: LineBreak.Strictness
```

### wordBreak

android Added in [1.3.0](https://developer.android.com/jetpack/androidx/releases/compose-ui#1.3.0)

```
val wordBreak: LineBreak.WordBreak
```

## Extension properties

### LineBreak.isSpecified

Cmn Artifact: [androidx.compose.ui:ui-text](https://developer.android.com/jetpack/androidx/releases/compose-ui) [View Source](https://cs.android.com/search?q=file:androidx/compose/ui/text/style/LineBreak.kt+symbol:isSpecified)

```
val LineBreak.isSpecified: Boolean
```

Returns `true` if it is not `https://developer.android.com/reference/kotlin/androidx/compose/ui/text/style/LineBreak#Unspecified()`.

| See also |
|---|---|
| `https://developer.android.com/reference/kotlin/androidx/compose/ui/text/style/LineBreak#Unspecified()` |   |