Android studio графика .xml

400
02 февраля 2017, 00:39

Полазив в anroid studio я нашел файлы векторной графики в (данном случаи это были иконки, в формате .xml). Возник вопрос, уместно в таком формате хранить логотип который выводиться на сплеш скрине? Если да, то как этот формат масштабируется под разные экраны?

Answer 1

Это формат VectorDrawable. Если ваш логотип возможно описать через вектор, то хранить его в таком виде более, чем уместно, так как потребуется всего один небольшой файл под все разрешения экранов, вместо целого комплекта достаточно тяжелых графических файлов под разные разрешения, на которые еще тратится дополнительный ресурс системы на определение текущей конфигурации и подходящего ей ресурса. Так же есть возможность использовать анимацию прямо в XML-файле (AnimatedVectorDrawable).

Android Studio включает конвертер из формата SVG и PSD в формат VectorDrawable, так что вы можете нарисовать что то в полноценном векторном графическом редакторе и затем импортировать в свой проект. Существуют ограничения, так как VectorDrawable проще и не реализует всех возможностей SVG (преобразование может не получиться корректным), но на практике это случается редко.

Как и любой вектор (например SVG) такая графика отлично масштабируется под любой размер, сохраняя четкий вид и чистоту линий, в отличии от растра.

Так же в Android есть упрощенный псевдо-векторный формат ShapeDrawable, который позволяет нарисовать некоторые примитивы, закрасить их и тп. Если возможностей этого инструмента достаточно для отображения задуманного вами, то его следует предпочесь более тяжелому VectorDrawable, так как это нативный инструмент системы

Если есть возможность использовать вектор вместо растра, ему следует отдать предпочтение в любых случаях работы с графикой - логотипы, иконки, бэкграунд виджетов и пр.

Answer 2

Уместно. и масштабируется векторная графика лучше чем растровая. Векторная графика хранит лишь команды по которым она отрисовывается, поэтому её масштабированию ничего не мешает.

READ ALSO
общие вопросе по системе координат в JavaFX

общие вопросе по системе координат в JavaFX

я тут начал писать программу в javafx и у меня скопилось много вопросов по поводу координат в инете я нечего не нашел

424
Авторизация по токену для POST/PUT/DEL в RESTful API на Spring Boot

Авторизация по токену для POST/PUT/DEL в RESTful API на Spring Boot

Здравствуйте! Впервые практикуюсь в REST и Spring

436
org.hibernate.MappingException: An AnnotationConfiguration instance is required

org.hibernate.MappingException: An AnnotationConfiguration instance is required

В общем получаю данную ошибку при попытке получить данные из БД mySql в сервлете

421