Compose中实现倾斜文字标签效果

slanted-text-compose

Github仓库地址

介绍

最近想实现一个在边角的倾斜文字标签效果,找了找只有View系统的,于是自己写了个简单的实现

演示

导入和使用

  1. Gradle导入
// 添加jitpack仓库
maven { url 'https://jitpack.io' }
复制代码
  1. 使用
SlantedText(
    text = "Slant",
    textSize = 15.sp,
    bold = false,
    thickness = (width * 100f).dp,
    padding = 16.dp,
    slantedMode = SlantedMode.TOP_RIGHT
) {
    // 标签下的内容,这里就随便写个带颜色的Box
    Box(
        modifier = Modifier
            .size(150.dp, 100.dp)
            .background(Color.Blue)
    )
}
复制代码

参数解释

  • text: 标签文字
  • textSize: 文字大小
  • bold: 文字是否加粗
  • thickness: 标签粗细
  • padding: 标签到角落的距离
  • slantedMode: 放置模式 (能够指定放在哪个角落)

实现原理

利用Canvas来直接绘制标签

见: SlantedText.kt#L56

License

MIT

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享