# BaselineShift

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/BaselineShift.kt+class:androidx.compose.ui.text.style.BaselineShift) Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/compose-ui#1.0.0) Common/AllAndroid/JVM
- Cmn

  ```
  value class BaselineShift
  ```

*** ** * ** ***

Shifts the text baseline vertically (up or down).

```kotlin
import androidx.compose.material3.Text
import androidx.compose.ui.text.SpanStyle
import androidx.compose.ui.text.buildAnnotatedString
import androidx.compose.ui.text.style.BaselineShift
import androidx.compose.ui.text.withStyle
import androidx.compose.ui.unit.sp

Text(
    fontSize = 20.sp,
    text =
        buildAnnotatedString {
            append(text = "Hello")
            withStyle(SpanStyle(baselineShift = BaselineShift.Superscript, fontSize = 16.sp)) {
                append("superscript")
                withStyle(SpanStyle(baselineShift = BaselineShift.Subscript)) {
                    append("subscript")
                }
            }
        },
)
```

```kotlin
import androidx.compose.material3.Text
import androidx.compose.ui.text.SpanStyle
import androidx.compose.ui.text.buildAnnotatedString
import androidx.compose.ui.text.style.BaselineShift
import androidx.compose.ui.text.withStyle

val annotatedString = buildAnnotatedString {
    append("Text ")
    withStyle(SpanStyle(baselineShift = BaselineShift.Superscript)) { append("Demo") }
}
Text(text = annotatedString)
```

## Summary

| ### Public companion properties |
|---|---|---|
| `https://developer.android.com/reference/kotlin/androidx/compose/ui/text/style/BaselineShift` | `https://developer.android.com/reference/kotlin/androidx/compose/ui/text/style/BaselineShift#None()` Constant for no baseline shift. | Cmn |
| `https://developer.android.com/reference/kotlin/androidx/compose/ui/text/style/BaselineShift` | `https://developer.android.com/reference/kotlin/androidx/compose/ui/text/style/BaselineShift#Subscript()` Default baseline shift for subscript | Cmn |
| `https://developer.android.com/reference/kotlin/androidx/compose/ui/text/style/BaselineShift` | `https://developer.android.com/reference/kotlin/androidx/compose/ui/text/style/BaselineShift#Superscript()` Default baseline shift for superscript. | Cmn |
| `https://developer.android.com/reference/kotlin/androidx/compose/ui/text/style/BaselineShift` | `https://developer.android.com/reference/kotlin/androidx/compose/ui/text/style/BaselineShift#Unspecified()` Represents an unset `https://developer.android.com/reference/kotlin/androidx/compose/ui/text/style/BaselineShift` value. | Cmn |

| ### Public constructors |
|---|---|
| `https://developer.android.com/reference/kotlin/androidx/compose/ui/text/style/BaselineShift#BaselineShift(kotlin.Float)(multiplier: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html)` | Cmn |

| ### Public properties |
|---|---|---|
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html` | `https://developer.android.com/reference/kotlin/androidx/compose/ui/text/style/BaselineShift#multiplier()` multiplier to shift the baseline (distance = multiplier \* (baseline - ascent)). | Cmn |

| ### Extension functions |
|---|---|---|
| `inline https://developer.android.com/reference/kotlin/androidx/compose/ui/text/style/BaselineShift` | `https://developer.android.com/reference/kotlin/androidx/compose/ui/text/style/BaselineShift.https://developer.android.com/reference/kotlin/androidx/compose/ui/text/style/BaselineShift#(androidx.compose.ui.text.style.BaselineShift).takeOrElse(kotlin.Function0)(block: () -> https://developer.android.com/reference/kotlin/androidx/compose/ui/text/style/BaselineShift)` If `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/package-summary#(androidx.compose.ui.graphics.Color).isSpecified()` is true then this is returned, otherwise `https://developer.android.com/reference/kotlin/androidx/compose/ui/text/style/package-summary#(androidx.compose.ui.text.style.BaselineShift).takeOrElse(kotlin.Function0)` is executed and its result is returned. | Cmn |

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

## Public companion properties

### None

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

```
val None: BaselineShift
```

Constant for no baseline shift.

### Subscript

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

```
val Subscript: BaselineShift
```

Default baseline shift for subscript

### Superscript

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

```
val Superscript: BaselineShift
```

Default baseline shift for superscript.

### Unspecified

Cmn

```
val Unspecified: BaselineShift
```

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

## Public constructors

### BaselineShift

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

```
BaselineShift(multiplier: Float)
```

| Parameters |
|---|---|
| `multiplier: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html` | multiplier to shift the baseline (distance = multiplier \* (baseline - ascent)). |

## Public properties

### multiplier

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

```
val multiplier: Float
```

multiplier to shift the baseline (distance = multiplier \* (baseline - ascent)).

## Extension functions

### BaselineShift.takeOrElse

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/BaselineShift.kt+function:takeOrElse)

```
inline fun BaselineShift.takeOrElse(block: () -> BaselineShift): BaselineShift
```

If `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/package-summary#(androidx.compose.ui.graphics.Color).isSpecified()` is true then this is returned, otherwise `https://developer.android.com/reference/kotlin/androidx/compose/ui/text/style/package-summary#(androidx.compose.ui.text.style.BaselineShift).takeOrElse(kotlin.Function0)` is executed and its result is returned.

## Extension properties

### BaselineShift.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/BaselineShift.kt+symbol:isSpecified)

```
val BaselineShift.isSpecified: Boolean
```

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

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