【发布时间】:2021-08-06 21:31:41
【问题描述】:
我需要禁用图像中的过滤才能正确显示像素艺术。我该怎么做?
我曾经像this answer那样做:
val DRAW_FILTER = PaintFlagsDrawFilter(Paint.FILTER_BITMAP_FLAG, 0)
@SuppressLint("RestrictedApi")
class AliasingDrawableWrapper(wrapped: Drawable) : DrawableWrapper(wrapped) {
override fun draw(canvas: Canvas) {
val oldDrawFilter = canvas.drawFilter
canvas.drawFilter = DRAW_FILTER
super.draw(canvas)
canvas.drawFilter = oldDrawFilter
}
}
和
imageView.setImageDrawable(AliasingDrawableWrapper(drawable)
【问题讨论】:
-
我什至不知道 ImageView 有这个选项,你能发布一些关于你过去是如何做到这一点的代码,给我们一个起点吗?
-
你能发布一张图片来展示吗?您在图像中执行什么样的比例?我在 Compose 的源代码中搜索并想要一个测试图像来尝试一些事情
-
@VitorRamos 任何像素艺术图像。例如:tea_leaves.webp。我将它缩放到固定大小,例如 16dp x 16dp,并且不希望它看起来模糊
标签: android kotlin android-jetpack-compose