Marco Pierucci
05/10/2021, 7:37 PMMarco Pierucci
05/10/2021, 7:37 PMMarco Pierucci
05/10/2021, 7:38 PM@Composable
fun Knob() {
val knobBitmap = ImageBitmap.imageResource(id = R.drawable.rotary_knob)
Canvas(Modifier.size(200.dp)) { drawImage(knobBitmap) }
}
Marco Pierucci
05/10/2021, 7:38 PMMarco Pierucci
05/10/2021, 7:38 PMandroid.graphics.drawable.VectorDrawable cannot be cast to android.graphics.drawable.BitmapDrawable
Marco Pierucci
05/10/2021, 7:38 PMfun ImageBitmap.Companion.imageResource(res: Resources, @DrawableRes id: Int): ImageBitmap {
return (res.getDrawable(id, null) as BitmapDrawable).bitmap.asImageBitmap()
}
Marco Pierucci
05/10/2021, 7:39 PMMarco Pierucci
05/10/2021, 7:39 PMMarco Pierucci
05/10/2021, 7:42 PMresources.getDrawable(R.drawable.rotary_knob, null)
.toBitmap(200 ,200)
works, but I was hopping there is a better approach?Ian Lake
05/10/2021, 7:42 PMnglauber
05/10/2021, 7:43 PMval vectorPainter = rememberVectorPainter(
ImageVector.vectorResource(R.drawable.ic_android_orange)
)
Canvas {
with(vectorPainter) {
draw(Size(96.dp.toPx(), 96.dp.toPx()))
}
}
Marco Pierucci
05/10/2021, 7:44 PMVector assets are loaded via `painterResource`: https://developer.android.com/jetpack/compose/resources#vector-assetsIsn´t that for Image/Icon Comopsable?
drawImage
from the Canvas DrawScope does not requires a painter, but a ImageBitmap
Ian Lake
05/10/2021, 7:45 PMMarco Pierucci
05/10/2021, 7:46 PM