# ScaleFactor

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

  ```
  value class ScaleFactor
  ```

*** ** * ** ***

Holds 2 dimensional scaling factors for horizontal and vertical axes

## Summary

| ### Public companion properties |
|---|---|---|
| `https://developer.android.com/reference/kotlin/androidx/compose/ui/layout/ScaleFactor` | `https://developer.android.com/reference/kotlin/androidx/compose/ui/layout/ScaleFactor#Unspecified()` A ScaleFactor whose `https://developer.android.com/reference/kotlin/androidx/compose/ui/layout/ScaleFactor#scaleX()` and `https://developer.android.com/reference/kotlin/androidx/compose/ui/layout/ScaleFactor#scaleY()` parameters are unspecified. | Cmn |

| ### Public constructors |
|---|---|
| `https://developer.android.com/reference/kotlin/androidx/compose/ui/layout/ScaleFactor#ScaleFactor(kotlin.Long)(packedValue: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-long/index.html)` | Cmn |

| ### Public functions |
|---|---|---|
| `inline operator https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html` | `https://developer.android.com/reference/kotlin/androidx/compose/ui/layout/ScaleFactor#component1()()` | Cmn |
| `inline operator https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html` | `https://developer.android.com/reference/kotlin/androidx/compose/ui/layout/ScaleFactor#component2()()` | Cmn |
| `https://developer.android.com/reference/kotlin/androidx/compose/ui/layout/ScaleFactor` | `https://developer.android.com/reference/kotlin/androidx/compose/ui/layout/ScaleFactor#copy(kotlin.Float,kotlin.Float)(scaleX: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html, scaleY: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html)` Returns a copy of this ScaleFactor instance optionally overriding the scaleX or scaleY parameters | Cmn |
| `operator https://developer.android.com/reference/kotlin/androidx/compose/ui/layout/ScaleFactor` | `https://developer.android.com/reference/kotlin/androidx/compose/ui/layout/ScaleFactor#div(kotlin.Float)(operand: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html)` Division operator. | Cmn |
| `operator https://developer.android.com/reference/kotlin/androidx/compose/ui/layout/ScaleFactor` | `https://developer.android.com/reference/kotlin/androidx/compose/ui/layout/ScaleFactor#times(kotlin.Float)(operand: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html)` Multiplication operator. | Cmn |
| `open https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html` | `https://developer.android.com/reference/kotlin/androidx/compose/ui/layout/ScaleFactor#toString()()` | Cmn |

| ### Public properties |
|---|---|---|
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-long/index.html` | `https://developer.android.com/reference/kotlin/androidx/compose/ui/layout/ScaleFactor#packedValue()` | Cmn |
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html` | `https://developer.android.com/reference/kotlin/androidx/compose/ui/layout/ScaleFactor#scaleX()` Returns the scale factor to apply along the horizontal axis | Cmn |
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html` | `https://developer.android.com/reference/kotlin/androidx/compose/ui/layout/ScaleFactor#scaleY()` Returns the scale factor to apply along the vertical axis | Cmn |

| ### Extension functions |
|---|---|---|
| `inline https://developer.android.com/reference/kotlin/androidx/compose/ui/layout/ScaleFactor` | `https://developer.android.com/reference/kotlin/androidx/compose/ui/layout/ScaleFactor.https://developer.android.com/reference/kotlin/androidx/compose/ui/layout/ScaleFactor#(androidx.compose.ui.layout.ScaleFactor).takeOrElse(kotlin.Function0)(block: () -> https://developer.android.com/reference/kotlin/androidx/compose/ui/layout/ScaleFactor)` If this `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/package-summary#(androidx.compose.ui.graphics.Color).isSpecified()` then this is returned, otherwise `https://developer.android.com/reference/kotlin/androidx/compose/ui/layout/package-summary#(androidx.compose.ui.layout.ScaleFactor).takeOrElse(kotlin.Function0)` is executed and its result is returned. | Cmn |
| `operator https://developer.android.com/reference/kotlin/androidx/compose/ui/geometry/Size` | `https://developer.android.com/reference/kotlin/androidx/compose/ui/layout/ScaleFactor.https://developer.android.com/reference/kotlin/androidx/compose/ui/layout/ScaleFactor#(androidx.compose.ui.layout.ScaleFactor).times(androidx.compose.ui.geometry.Size)(size: https://developer.android.com/reference/kotlin/androidx/compose/ui/geometry/Size)` Multiplication operator with `https://developer.android.com/reference/kotlin/androidx/compose/ui/geometry/Size` with reverse parameter types to maintain commutative properties of multiplication | Cmn |

| ### Extension properties |
|---|---|---|
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` | `https://developer.android.com/reference/kotlin/androidx/compose/ui/layout/ScaleFactor.https://developer.android.com/reference/kotlin/androidx/compose/ui/layout/ScaleFactor#(androidx.compose.ui.layout.ScaleFactor).isSpecified()` `false` when this is `https://developer.android.com/reference/kotlin/androidx/compose/ui/layout/ScaleFactor#Unspecified()`. | Cmn |
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-boolean/index.html` | `https://developer.android.com/reference/kotlin/androidx/compose/ui/layout/ScaleFactor.https://developer.android.com/reference/kotlin/androidx/compose/ui/layout/ScaleFactor#(androidx.compose.ui.layout.ScaleFactor).isUnspecified()` `true` when this is `https://developer.android.com/reference/kotlin/androidx/compose/ui/layout/ScaleFactor#Unspecified()`. | Cmn |

## Public companion properties

### Unspecified

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

```
val Unspecified: ScaleFactor
```

A ScaleFactor whose `https://developer.android.com/reference/kotlin/androidx/compose/ui/layout/ScaleFactor#scaleX()` and `https://developer.android.com/reference/kotlin/androidx/compose/ui/layout/ScaleFactor#scaleY()` parameters are unspecified. This is a sentinel value used to initialize a non-null parameter. Access to scaleX or scaleY on an unspecified size is not allowed

## Public constructors

### ScaleFactor

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

```
ScaleFactor(packedValue: Long)
```

## Public functions

### component1

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

```
inline operator fun component1(): Float
```

### component2

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

```
inline operator fun component2(): Float
```

### copy

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

```
fun copy(scaleX: Float = this.scaleX, scaleY: Float = this.scaleY): ScaleFactor
```

Returns a copy of this ScaleFactor instance optionally overriding the scaleX or scaleY parameters

### div

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

```
operator fun div(operand: Float): ScaleFactor
```

Division operator.

Returns a `https://developer.android.com/reference/kotlin/androidx/compose/ui/layout/ScaleFactor` with scale x and y values divided by the operand

### times

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

```
operator fun times(operand: Float): ScaleFactor
```

Multiplication operator.

Returns a `https://developer.android.com/reference/kotlin/androidx/compose/ui/layout/ScaleFactor` with scale x and y values multiplied by the operand

### toString

Cmn

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

## Public properties

### packedValue

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

```
val packedValue: Long
```

### scaleX

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

```
val scaleX: Float
```

Returns the scale factor to apply along the horizontal axis

### scaleY

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

```
val scaleY: Float
```

Returns the scale factor to apply along the vertical axis

## Extension functions

### ScaleFactor.takeOrElse

Cmn Artifact: [androidx.compose.ui:ui](https://developer.android.com/jetpack/androidx/releases/compose-ui) [View Source](https://cs.android.com/search?q=file:androidx/compose/ui/layout/ScaleFactor.kt+function:takeOrElse)

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

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

### ScaleFactor.times

Cmn Artifact: [androidx.compose.ui:ui](https://developer.android.com/jetpack/androidx/releases/compose-ui) [View Source](https://cs.android.com/search?q=file:androidx/compose/ui/layout/ScaleFactor.kt+function:times)

```
operator fun ScaleFactor.times(size: Size): Size
```

Multiplication operator with `https://developer.android.com/reference/kotlin/androidx/compose/ui/geometry/Size` with reverse parameter types to maintain commutative properties of multiplication

Return a new `https://developer.android.com/reference/kotlin/androidx/compose/ui/geometry/Size` with the width and height multiplied by the `https://developer.android.com/reference/kotlin/androidx/compose/ui/layout/ScaleFactor#scaleX()` and `https://developer.android.com/reference/kotlin/androidx/compose/ui/layout/ScaleFactor#scaleY()` respectively

## Extension properties

### ScaleFactor.isSpecified

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

```
val ScaleFactor.isSpecified: Boolean
```

`false` when this is `https://developer.android.com/reference/kotlin/androidx/compose/ui/layout/ScaleFactor#Unspecified()`.

### ScaleFactor.isUnspecified

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

```
val ScaleFactor.isUnspecified: Boolean
```

`true` when this is `https://developer.android.com/reference/kotlin/androidx/compose/ui/layout/ScaleFactor#Unspecified()`.