2012-03-29 4 views
8

Xcode optimiert PNG-Bilder, so dass sie schneller geladen werden, aber wird dies auch für andere Bildressourcen empfohlen, die nicht für Schaltflächen und UI (Fotos zum Beispiel) sind?Wird PNG für alle Bilddateien unter iOS gegenüber JPEG bevorzugt?

Oder ist es ein Standard, UI-Bilder als PNG und "Fotos" als JPEG zu haben?

Was ist die beste Vorgehensweise hier?

+0

mögliche Duplikate von [wann PNG oder JPG in iPhone-Entwicklung zu verwenden?] (Http://stackoverflow.com/questions/3929281/when-to-use-png-or-jpg-in-iphone-development) –

+0

PNGs können noch schneller laden, wenn Sie Xcode nicht berühren: http://imageoptim.com/xcode.html – Kornel

Antwort

9

Die beste Vorgehensweise besteht darin, PNG-Dateien so oft wie möglich zu verwenden, wenn Sie Bilder in Ihrer App verwenden. iOS und Xcode laden und zeigen PNGs am schnellsten im Gegensatz zu anderen Formaten. Wenn Sie eine Wahl haben, gehen Sie mit PNG.

Wenn Sie einen anderen Dateityp verwenden (oder wenn Sie nicht optimierte PNG-Dateien laden), muss Ihr iPhone die Byte-Swapping- und Alpha-Premultiplikation zur Ladezeit ausführen (und möglicherweise die Alpha-Multiplikation wiederholen) Anzeigezeit). Ihre Anwendung muss im Grunde die gleiche Verarbeitung wie Xcode durchführen, aber sie tut dies zur Laufzeit anstatt zur Build-Zeit. Dies wird Sie sowohl hinsichtlich der Prozessorzyklen als auch des Speicheraufwands kosten. Einer der Gründe, warum Mobile Safari der größte Speicher der integrierten iPhone-Anwendungen ist, liegt darin, dass die Bilder, die geladen werden müssen, um Webseiten anzuzeigen, nicht optimierte Bilder sind, hauptsächlich JPEGs. Da JPEG ein komprimiertes Format ist, hat es den zusätzlichen zusätzlichen Schritt, das Bild in den Speicher zu dekomprimieren, bevor es die Vormultiplikation und das Byte-Swapping durchführen kann.

+2

die Behauptung, dass PNG schneller als JPG ist, wird nicht von Tests http: //www.coaanetics unterstützt. com/2012/09/iphone-5-image-dekompressions-benchmarked /. Eher scheint mir PNG gute Wahl für kleine Elemente/Bilder oder wenn Alpha/Transparenz vorhanden ist - und JPG ist für alles andere –

Verwandte Themen