Разбитый вектор можно нарисовать с помощью android fillType = evenOdd - PullRequest
0 голосов
/ 26 апреля 2018
android:fillType="evenOdd" 

сделать векторное изображение неработоспособным в Android 21, есть ли способ исправить этот вектор?

Я также декомпилировал файл release.apk и обнаружил, что они удаляют android:fillType="evenOdd" и даже в debug.apkон имеет
android:fillType="evenOdd", но все еще показывает сломанное изображение в приложении

1 Ответ

0 голосов
/ 26 апреля 2018

Решение 1

Плоское изображение в Эскиз и использование этого сайта для преобразования SVG в xml для Android

Решение 2

Я использую nonZero вместо evenOdd и открываю его в Sketch для обратного Порядка, после обратного он изменит pathData и удалит android: fillType и все отлично работает на Android 21 +.

Решение 3

PNG

TLDR

После некоторых исследований я обнаружил, что есть два метода свойств правила заполнения для векторной графики:SVGs, «Evenodd» против «ненулевой»

Я открыл значок SVG в Sketch и осмотрел отверстие в верхней части значка.Как и ожидалось, он использует свойство fill-rule: evenodd.Теперь мне нужно изменить правило заполнения, чтобы использовать свойство «отличное от нуля».Как?Выберите путь.Справа находится значок настроек в свойстве «Заполнение».Щелкните по нему и выберите «ненулевой».

В главном меню выберите «Слой» → «Пути» → «Обратный порядок».Я вернул отверстие в верхней части значка и тоже получил отверстие в приложении.

Подробнее

...