Converts an RGBA5551 image to an RGB565 image, with loss of alpha.
SDKs
- iOS 8.0+
- macOS 10.10+
- Mac Catalyst 13.0+
- tvOS 9.0+
- watchOS 2.0+
Framework
- Accelerate
Declaration
func vImageConvert_RGBA5551toRGB565(_ src: Unsafe Pointer<v Image _Buffer>, _ dest: Unsafe Pointer<v Image _Buffer>, _ flags: v Image _Flags) -> v Image _Error
Parameters
src
A pointer to a vImage buffer structure that contains the source image whose data you want to convert.
dest
A pointer to a vImage buffer data structure. You're responsible for filling out the
height
,width
, androw
fields of this structure, and for allocating a data buffer of the appropriate size. On return, the data buffer this structure points to contains the destination image data. When you no longer need the data buffer, you must deallocate the memory.Bytes flags
The options to use when performing the operation. If you plan to perform your own tiling or use multithreading, pass
kv
.Image Do Not Tile
Return Value
kv
; otherwise, one of the error codes described in Data Types and Constants.
Discussion
If you need to process the alpha information first—for example, unpremultiplying or flattening—convert to 8-bit per channel first. vImage defines both RGB565 and ARGB1555 to be host-endian formats. On Intel, ARM, and other little-endian systems, they're little-endian uint16
in memory. On a big-endian system, they're big-endian uint16
.