-1

Мы начали использовать векторные чертежи в нашем приложении для Android. Я читал о проблемах с производительностью, возникающих при использовании растровых изображений в приложениях для Android.Проблема с производительностью растровых изображений

Может ли кто-нибудь объяснить причину, по которой возникает проблема с производительностью?

Можно ли использовать множество векторных чертежей в приложении?

Спасибо заранее!

ответ

0

Это на самом деле не андроид специфичны. Это больше связано с различными форматами изображений. Растровое изображение имеет фиксированный размер в том смысле, что он всегда состоит из одного и того же количества пикселей, что является одним из основных факторов размера файла (и объем памяти после его загрузки). Это также влияет на вашу способность преобразовывать изображение.

Если вы хотите уменьшить растровое изображение, вам нужно отбросить пиксели, что обязательно является преобразованием с потерями (хотя меньший размер затрудняет или не может заметить потерянные данные). Чтобы увеличить изображение, вам нужно интерполировать пиксели: добавить данные, которых не было в исходном изображении, а это означает, что изображение начнет пикселировать.

С векторным изображением, с другой стороны, данные хранятся не в терминах пикселей. Вместо этого он хранит «пути», которые инструктируют компьютер о том, как рисовать изображение. Эти пути независимы от размера, что означает, что его размер может быть увеличен или уменьшен без потери данных или качества изображения. Поскольку размер не имеет значения, только данные, необходимые для хранения путей (и других данных), сохраняются в файле векторного изображения. Это означает, что файл (обычно) намного меньше эквивалентного растрового изображения и поэтому занимает меньше памяти при загрузке.

Использование вектора будет означать, что ваше приложение занимает меньше памяти и более легко адаптируется к разным размерам экрана, так как андроид может сжимать/расширять вашу графику, чтобы соответствовать, не теряя при этом никакого качества.

+0

У меня была грубая идея, но вы сделали ее кристально чистой. благодаря !! –

+0

@MilindGaikwad Рад помочь! Не забудьте принять любой ответ, который вам больше нравится. – Andrew

0

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

Чтобы растровые изображения имели больше элементов пути, которые представляют пиксели. Android генерирует изображения, используя эти элементы. Сложные векторы занимают больше времени при попытке сгенерировать вместо этого загрузку заданного растрового изображения.

Как я знаю, вы не должны использовать растр в Android. Он поддерживает только векторы.

Успехов

Эмре

+0

Векторы поддерживаются начиная с леденца ниже, что мы должны генерировать нормальные изображения с помощью библиотеки поддержки, и они находятся в растровом формате (png). –