【发布时间】:2022-02-19 00:13:17
【问题描述】:
我已阅读article。
我知道当我使用nativeCanvas 时可能需要设置isAntiAlias=true,就像代码A 一样。
当我使用 Android Compose Canvas(例如 Code B)时,是否需要设置 isAntiAlias ?如果是这样,我该怎么做?
代码 A
@Composable
fun ArcTextExample() {
val paint = Paint().asFrameworkPaint()
Canvas(modifier = Modifier.fillMaxSize()) {
paint.apply {
isAntiAlias = true
textSize = 24f
typeface = Typeface.create(Typeface.DEFAULT, Typeface.BOLD)
}
drawIntoCanvas {
val path = Path()
path.addArc(RectF(0f, 100f, 200f, 300f), 270f, 180f)
it.nativeCanvas.drawTextOnPath("Hello World Example", path, 0f, 0f, paint)
}
}
}
代码 B
@Composable
fun setCanvas() {
Canvas(
modifier = Modifier
.fillMaxSize()
) {
val canvasWidth = size.width
val canvasHeight = size.height
drawLine(
start = Offset(x = 0f, y = canvasHeight),
end = Offset(x = canvasWidth, y = 0f),
color = Color.Blue
)
}
}
【问题讨论】:
标签: kotlin android-jetpack-compose