Как нарисовать векторное изображение canvas

115
14 ноября 2021, 03:20

Как используя canvas нарисовать VectorDrawable. Обычный Drawable у меня получается нарисовать конвертацией в Bitmap, но как нарисовать VectorDrawable, возможно ли это?

Answer 1

Пробуйте этот вариант:

public static Bitmap getBitmapFromVectorDrawable(Context context, int drawableId) {
    Drawable drawable = ContextCompat.getDrawable(context, drawableId);
    if (Build.VERSION.SDK_INT < Build.VERSION_CODES.LOLLIPOP) {
        drawable = (DrawableCompat.wrap(drawable)).mutate();
    }
    Bitmap bitmap = Bitmap.createBitmap(drawable.getIntrinsicWidth(),
            drawable.getIntrinsicHeight(), Bitmap.Config.ARGB_8888);
    Canvas canvas = new Canvas(bitmap);
    drawable.setBounds(0, 0, canvas.getWidth(), canvas.getHeight());
    drawable.draw(canvas);
    return bitmap;
}

https://stackoverflow.com/questions/33696488/getting-bitmap-from-vector-drawable

READ ALSO
Как выстроить структуру классов?

Как выстроить структуру классов?

Дорый день! У меня есть тестовое заданиеКейс сбора данных:

277
return пустой массив

return пустой массив

Как вернуть пустой массив в методе?

74
Ограничение записи массива в массив

Ограничение записи массива в массив

Пришлось немного подхимичить код чтобы при загрузке на сайт универа не одинаков былВ общем где тут дописать чтобы при двух массивах с одним...

114
Можно ли как-то поместить иконки в jar, чтобы было проще его передать на другой компьютер?

Можно ли как-то поместить иконки в jar, чтобы было проще его передать на другой компьютер?

У меня Maven-проектЯ положила иконки в папку src\main\resources, прописала такие же пути к ним, но созданный jar-архив их не видит

84