如何在圆形视图中显示矩形图像?

How to show a rectangular image in Circle view?

我正在尝试显示 android 组成圆形的矩形图像,但边缘不会拉伸以填满整个图像。
换句话说,即使我必须从垂直边缘裁剪,我也不希望出现下图中显示的黑色背景,并且旗帜会拉伸以覆盖它

用于生成图像的代码

Image(
  imageVector = vectorResource(id = R.drawable.flag_cn),
  modifier = Modifier.matchParentSize().clip(CircleShape)
              .background(shape = CircleShape, color = Color.Black))

更新:
我尝试将 Image Compose 中的内容缩放选项设置为裁剪

  Image(
            imageVector = vectorResource(id = flagID),
            modifier = Modifier
                .fillMaxSize(0.4f)
                .background(shape = CircleShape, color = Color.Black)
                .align(Alignment.BottomEnd)
                .clip(CircleShape),
            contentScale = ContentScale.Crop
        )

您可以使用可用于将图像边界缩放到其视图边界的缩放类型选项。此选项适用于 ImageView

你可以选择

android:scaleType="centerCrop"

参考: ImageView ScaleType

也许是这样的?

val imageVector = vectorResource(id = R.drawable.flag_cn)
Surface(
        modifier = Modifier.preferredSize(200.dp),
        shape = CircleShape,
    ) {
        Image(imageVector, modifier = Modifier.size(300.dp))
    }

使用CircleShape应用clip修饰符:

Image(
    painter = painterResource(R.drawable.xxx),
    contentDescription = "xxxx",
    contentScale = ContentScale.Crop,            
    modifier = Modifier
        .size(64.dp)
        .clip(CircleShape)                       
)