Пикселизация composable в Compose Multiplatform

Пикселизация composable в Compose Multiplatform
Pixelate показывает, как скрывать данные не заменой на плейсхолдер, а тем же интерфейсом с пикселизацией. Modifier.pixelate() можно повесить на Text или на родительский контейнер, а эффект применится к детям тоже.

Внутри используется drawWithCache: контент сначала рисуется в маленький ImageBitmap, потом увеличивается через FilterQuality.Low и выводится обратно без сглаживания. Размер блока считают от высоты: cell = (srcHeight * blockRatio).coerceIn(4.dp.toPx(), 14.dp.toPx()), чтобы одинаковый шрифт давал одинаковую сетку.

Подход сохраняет размер и позицию элемента в layout, но делает исходный текст нечитаемым. Это удобно для превью платного контента и других случаев, где нужен намёк на данные без их раскрытия.

https://joebirch.co/android/pixelating-composables-in-compose-multiplatform/

Открыть в Telegram Подписаться на канал