Google is committed to advancing racial equity for Black communities. See how.

# Dp

`@Immutable inline class Dp : Comparable<Dp>`
 kotlin.Any ↳ androidx.compose.ui.unit.Dp

Dimension value representing device-independent pixels (dp). Component APIs specify their dimensions such as line thickness in DP with Dp objects. Hairline (1 pixel) thickness may be specified with Hairline, a dimension that take up no space. Dp are normally defined using dp, which can be applied to Int, Double, and Float. val leftMargin = 10.dp val rightMargin = 10f.dp val topMargin = 20.0.dp val bottomMargin = 10.dp Drawing is done in pixels. To retrieve the pixel size of a Dp, use toPx: val lineThicknessPx = lineThickness.toPx(context) toPx is normally needed only for painting operations.

## Summary

Public constructors
`<init>(value: Float)`

Dimension value representing device-independent pixels (dp).

Public methods
operator Int
`compareTo(other: Dp)`

Support comparing Dimensions with comparison operators.

operator Dp
`div(other: Float)`

Divide a Dp by a scalar.

operator Dp
`div(other: Int)`

operator Float
`div(other: Dp)`

Divide by another Dp to get a scalar.

operator DpInverse
`div(other: DpSquared)`

Divide by DpSquared to get a DpInverse.

operator Dp
`minus(other: Dp)`

Subtract a Dp from another one.

operator Dp
`plus(other: Dp)`

operator Dp
`times(other: Float)`

Multiply a Dp by a scalar.

operator Dp
`times(other: Int)`

operator DpSquared
`times(other: Dp)`

Multiply by a Dp to get a DpSquared result.

operator DpCubed
`times(other: DpSquared)`

Multiply by a Dp to get a DpSquared result.

String
`toString()`

operator Dp
`unaryMinus()`

This is the same as multiplying the Dp by -1.

Extension functions
From androidx.ui.test
 Unit `Dp.assertIsEqualTo(expected: Dp, subject: String = "", tolerance: Dp = Dp(.5f))` Asserts that this value is equal to the given expected value. Unit `Dp.assertIsNotEqualTo(unexpected: Dp, subject: String = "", tolerance: Dp = Dp(.5f))` Asserts that this value is not equal to the given unexpected value.
From androidx.compose.ui.unit
 Dp `Dp.coerceAtLeast(minimumValue: Dp)` Ensures that this value is not less than the specified minimumValue. Dp `Dp.coerceAtMost(maximumValue: Dp)` Ensures that this value is not greater than the specified maximumValue. Dp `Dp.coerceIn(minimumValue: Dp, maximumValue: Dp)` Ensures that this value lies in the specified range minimumValue. Boolean `Dp.isFinite()` Return `true` when it is finite or `false` when it is Dp.Infinity
Properties
Float
`value`

Companion properties
Dp
`Hairline`

A dimension used to represent a hairline drawing element.

Dp
`Infinity`

Infinite dp dimension.

Dp
`Unspecified`

Constant that means unspecified Dp

## Public constructors

### <init>

`Dp(value: Float)`

Dimension value representing device-independent pixels (dp). Component APIs specify their dimensions such as line thickness in DP with Dp objects. Hairline (1 pixel) thickness may be specified with Hairline, a dimension that take up no space. Dp are normally defined using dp, which can be applied to Int, Double, and Float. val leftMargin = 10.dp val rightMargin = 10f.dp val topMargin = 20.0.dp val bottomMargin = 10.dp Drawing is done in pixels. To retrieve the pixel size of a Dp, use toPx: val lineThicknessPx = lineThickness.toPx(context) toPx is normally needed only for painting operations.

## Public methods

### compareTo

`@Stable operator fun compareTo(other: Dp): Int`

Support comparing Dimensions with comparison operators.

### div

`@Stable inline operator fun div(other: Float): Dp`

Divide a Dp by a scalar.

### div

`@Stable inline operator fun div(other: Int): Dp`

### div

`@Stable inline operator fun div(other: Dp): Float`

Divide by another Dp to get a scalar.

### div

`@Stable inline operator fun div(other: DpSquared): DpInverse`

Divide by DpSquared to get a DpInverse.

### minus

`@Stable inline operator fun minus(other: Dp): Dp`

Subtract a Dp from another one.

### plus

`@Stable inline operator fun plus(other: Dp): Dp`

### times

`@Stable inline operator fun times(other: Float): Dp`

Multiply a Dp by a scalar.

### times

`@Stable inline operator fun times(other: Int): Dp`

### times

`@Stable inline operator fun times(other: Dp): DpSquared`

Multiply by a Dp to get a DpSquared result.

### times

`@Stable inline operator fun times(other: DpSquared): DpCubed`

Multiply by a Dp to get a DpSquared result.

### toString

`@Stable fun toString(): String`

### unaryMinus

`@Stable inline operator fun unaryMinus(): Dp`

This is the same as multiplying the Dp by -1.0.

## Properties

### value

`val value: Float`

## Companion properties

### Hairline

`@Stable val Hairline: Dp`

A dimension used to represent a hairline drawing element. Hairline elements take up no space, but will draw a single pixel, independent of the device's resolution and density.

### Infinity

`@Stable val Infinity: Dp`

Infinite dp dimension.

### Unspecified

`@Stable val Unspecified: Dp`

Constant that means unspecified Dp