---
title: "premultiply(alpha:)"
framework: accelerate
role: symbol
role_heading: Instance Method
path: "accelerate/vimage/pixelbuffer/premultiply(alpha:)-11gly"
---

# premultiply(alpha:)

Transforms an 8-bit planar pixel buffer in-place from nonpremultiplied alpha format to premultiplied alpha format.

## Declaration

```swift
func premultiply(alpha: vImage.PixelBuffer<Format>)
```

## Parameters

- `alpha`: An 8-bit planar pixel buffer that contains the alpha.

## Discussion

Discussion This function multiplies the color values in self by the corresponding alpha values. The function treats the values 0 ... 255 in both pixel buffers as the values 0 ... 1. For example, the following code premultiplies a 4 x 1 planar pixel buffer with the corresponding pixels in a separate planar alpha buffer: let src = vImage.PixelBuffer<vImage.Planar8>(     pixelValues: [32, 64, 128, 255],     size: vImage.Size(width: 4, height: 1))

let alpha = vImage.PixelBuffer<vImage.Planar8>(     pixelValues: [0, 128, 128, 255],     size: vImage.Size(width: 4, height: 1))

src.premultiply(alpha: alpha)

// Prints "[0, 32, 64, 255]". print(src.array)

## See Also

### Premultiply

- [premultiply(alpha:)](accelerate/vimage/pixelbuffer/premultiply(alpha:)-76rr.md)
- [premultiply(channelOrdering:)](accelerate/vimage/pixelbuffer/premultiply(channelordering:)-4xpq9.md)
- [premultiply(channelOrdering:)](accelerate/vimage/pixelbuffer/premultiply(channelordering:)-302ci.md)
- [premultiply()](accelerate/vimage/pixelbuffer/premultiply().md)
- [premultiply(channelOrdering:)](accelerate/vimage/pixelbuffer/premultiply(channelordering:)-fzwd.md)
