Разбор svg для Android, проблемы с официальной библиотекой
Здравствуйте, я пишу приложение для Android, используя android svg-android.jar. (Я думаю, что это официальная библиотека Google) Я пытаюсь разобрать мой svg я получаю сообщение об ошибке. мой svg падает на эту строку:
<stop offset="0.1774" style="stop-color:#EDEDED;stop-opacity:0.2"/>
я получаю следующую ошибку: java.lang.NumberFormatException: недопустимый int: "EDEDED; стоп-непрозрачность:0,2"
в коде Google для проекта я увидел это:
if (gradient != null) {
float offset = getFloatAttr("offset", atts);
String style = getStringAttr("style", atts);
if (style.startsWith("stop-color:#")) {
int color = Integer.parseInt(style.substring("stop-color:#".length()), 16);
color |= 0xFF000000;
gradient.positions.add(offset);
gradient.colors.add(color);
}
}
Похоже, что Google не может справиться с непрозрачностью стиля. Сам SVG генерируется с помощью программы. у меня такой вопрос: есть ли другая библиотека Android для разбора SVG? Я искал и не мог найти.
на сайте Google Code нет самого последнего кода?(Google, как я слышал, перестал его поддерживать)
Есть ли другой способ придать непрозрачность элементу stop, который не включает атрибут style?
или самый раздражающий вариант - подождать, пока кто-нибудь напишет, чтобы это исправить?(также прокомментировал сайт проекта Google Code, но последний комментарий от 2014 года не знаю, получу ли я вообще ссылку).
помощь будет оценена спасибо!
1 ответ
Существует другой способ придать непрозрачность элементу stop, который не включает атрибут style, сопоставленные атрибуты CSS, например
<stop offset="0.1774" stop-color="#EDEDED" stop-opacity="0.2"/>