Package-level declarations

Functions

Link copied to clipboard
fun KiteAnimatedImage(animation: KiteAnimation, contentDescription: String?, modifier: Modifier = Modifier, alignment: Alignment = Alignment.Center, contentScale: ContentScale = ContentScale.Fit, alpha: Float = DefaultAlpha, colorFilter: ColorFilter? = null, filterQuality: FilterQuality = DrawScope.DefaultFilterQuality, animate: Boolean = true)

Play an already-decoded KiteAnimation: the one frame loop shared by KiteImage's byte-array overload and kiteimage-coil's KiteAsyncImage. Public because callers running their own decode pipeline deserve playback too, exactly like the KiteImage overload that takes a KiteBitmap.

Link copied to clipboard
fun KiteImage(bitmap: KiteBitmap, contentDescription: String?, modifier: Modifier = Modifier, alignment: Alignment = Alignment.Center, contentScale: ContentScale = ContentScale.Fit, alpha: Float = DefaultAlpha, colorFilter: ColorFilter? = null, filterQuality: FilterQuality = DrawScope.DefaultFilterQuality)

Display an already-decoded KiteBitmap (for callers running their own decode pipeline). Conversion to ImageBitmap is remembered per instance.

fun KiteImage(data: ByteArray, contentDescription: String?, modifier: Modifier = Modifier, alignment: Alignment = Alignment.Center, contentScale: ContentScale = ContentScale.Fit, alpha: Float = DefaultAlpha, colorFilter: ColorFilter? = null, filterQuality: FilterQuality = DrawScope.DefaultFilterQuality, animate: Boolean = true, onError: (ImageDecodeException) -> Unit? = null)

Display any image KiteImage can decode: and it decides on its own whether to animate. Feed it a GIF and it plays (correct delays, disposal compositing, NETSCAPE loop count, holding the last frame after a finite loop ends); feed it a PNG/BMP and it just draws. One composable, no format branching at call sites.

Link copied to clipboard

Android path. createBitmap(IntArray, …) takes non-premultiplied ARGB color ints, exactly KiteBitmap's layout, and premultiplies internally.

Convert a decoded KiteBitmap (non-premultiplied ARGB_8888 in an IntArray) to a Compose ImageBitmap.

Skiko path (JVM, iOS, macOS, JS, WASM). UNPREMUL, not OPAQUE/PREMUL: the core hands over straight (non-premultiplied) alpha, and Skia premultiplies on draw; same choice KitePDF's compose viewer landed on after transparent PDF logos rendered on grey boxes.