Что быстрее: создать градиент программно с помощью Quartz2D или просто импортировать изображение? - PullRequest
12 голосов
/ 25 августа 2011

Давайте предположим, что файловое пространство на iphone не проблема, что будет лучше?Будет ли какая-нибудь заметная разница в скорости / плавности между ними?

Ответы [ 2 ]

10 голосов
/ 25 августа 2011

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

TL; Графика DR Core выглядит немного быстрее при использовании в этом контексте.

Что бы это ни стоило, я делаю как можно больше рисунков в своем приложении, используя Core Graphics, включая такие вещи, как радиальные градиенты и текстурированные UILabel. Как разработчик с ограниченными дизайнерскими навыками, я часто получаю гораздо лучшие результаты, используя такие инструменты, как Photoshop.

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

1 голос
/ 25 августа 2011

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

...