Bilder dürfen keine Alphakanäle oder Transparentfolien enthalten


331

Apple hat eine neue Version von iTunes Connect veröffentlicht und ich habe eine Fehlermeldung erhalten, als ich versucht habe, Screenshots auf iTunes Connect für meine App festzulegen.

"Images can't contain alpha channels or transparencies." 

Geben Sie hier die Bildbeschreibung ein


Dies

15
Einfach Bild in JPG-Format konvertieren hat bei mir funktioniert !!
Jayprakash Dubey

1
Der allererste Bild-Uploader, den ich selbst geschrieben habe, kann JPEG, PNG oder GIF beliebiger Größe verwenden, richtig drehen und ein JPEG mit der gewünschten Komprimierungsstufe ausgeben. Anscheinend kann ich Bild-Uploader erstellen und Apple nicht. Und im Gegensatz zu Apple würde ich nie davon träumen, meine Benutzer zu zwingen, "oh, einfach Alpha manuell aus dem PNG zu entfernen! Für jedes Bild!".
Henrik Erlandsson

Es ist lahm, dass xcode dies zulässt, wenn iTunes Connect dies nicht tut.
James T Snell

Antworten:


262

AFAIK PNG mit Transparenz ist nicht erlaubt. Verwenden Sie JPG ODER aktualisieren Sie Ihr PNG (Photoshop oder was auch immer Sie zum Erstellen des PNG verwenden) und löschen Sie die Transparenzbereiche. Wenn Sie mit Schatten arbeiten, verwenden Sie JPG, das keine Kopfschmerzen verursacht.


Arbeitete auch für mich. Danke
Honey

6
JPEG ist verlustbehaftet und eine schreckliche, schreckliche Idee. Überprüfen Sie andere Antworten und entfernen Sie die Transparenz ordnungsgemäß.
Rudolf Adamkovič

3
Durch einfaches Öffnen in der Vorschau und Exportieren in JPEG wurde das Problem behoben. Der Screenshot des XCode-Geräts wird in PNG gespeichert, was das Problem ist. Das Aufnehmen von Bildschirmen mit dem Gerät (Home-Taste + Ein- / Aus-Taste) wird in JPEG gespeichert.
Anna Billstrom

33
Sie können in der Vorschau ohne Alpha nach PNG exportieren. Öffnen Sie einfach Ihr Bild, wählen Sie Exportieren, wählen Sie PNG, deaktivieren Sie Alpha und klicken Sie auf Speichern. Die Vorschau unterstützt auch den Stapelexport, wenn Sie alle Bilder gleichzeitig öffnen.
Russell Ladd

1
Schöne Antwort, aber wie ich bemerke, ist das JPG-Ergebnis nicht gut, also öffne ich einfach das Bild in Photoshop, setze die Hintergrundebene und stelle die weiße Farbe so ein, dass die Bildtransparenz entfernt wird, und verwende dieses Bild als PNG.
Nitin Gohel

467

Ich habe festgestellt, dass Sie die PNGs in der Vorschau auch einfach erneut exportieren können, aber das Kontrollkästchen Alpha beim Speichern deaktivieren.

Geben Sie hier die Bildbeschreibung ein


48
Es ist lächerlich, dass iTunes Connect keine von Xcode generierten Screenshots akzeptiert, wenn man bedenkt, dass sie dies empfehlen.
Joseph Toronto

Aus irgendeinem unerklärlichen Grund halbiert es dabei die Abmessungen und hat jetzt die "falsche Größe" für iTC! WTF Apple ???
mharper

13
Es ist verständlich, dass Apple es sich mit nur 178 Milliarden US-Dollar in bar nicht leisten kann, diesen dummen Fehler zu beheben, und dass Zehntausende von Entwicklern diesen Vorgang immer wieder mühsam selbst ausführen müssen. Pfui.
Nate

würde, dass ich dieser Person 100 Stimmen für die Lösung meines Problems geben kann
Noor

2
Doppelklicken Sie auf das Foto "Datei" -> "Exportieren ..."
Arjay Waran

102

es ist so einfach ...

Öffnen Sie das Bild in der Vorschau- App, klicken Sie auf Datei -> Exportieren und deaktivieren Sie Alpha


Dies funktioniert unter Mac OS High Sierra nicht. Bitte versuchen Sie eine niedrigere Version, um ohne Alpha zu exportieren. Hoffe es hilft jemandem.
Satheeshwaran

Sehr einfache Lösung. Vielen Dank!
Lina T

Arbeitet in Catalina. Ersetzt jede Transparenz durch Weiß.
Marcy

85

Dafür habe ich ein neues einfaches Werkzeug gemacht. Sie können den Alphakanal (Transparenz) mehrerer PNG-Dateien innerhalb von Sekunden entfernen.

Alpha Channel Remover

Sie können von hier http://alphachannelremover.blogspot.com herunterladen


17
Vielen Dank. Ich hasse es, dass Apple dem Erfassen, Speichern und Senden von Screenshots an den iTunesConnect Store einen weiteren Schritt hinzugefügt hat.
Andrew Smith

2
Dieses Tool ist sehr einfach und dennoch sehr nützlich. Ansonsten musste ich Zeit mit Apples Preview App verbringen, um die Transparenz einzeln zu entfernen, was sehr zeitaufwändig ist. Jetzt ist es möglich, mehrere Dateien mit nur einer Aufnahme zu erstellen.
bpolat

1
Sehr praktisch, danke! Für alle Programmierer, die Apple hat, könnte man meinen, sie könnten den Alpha-Kanal einfach automatisch entfernen. Ich schwöre, keines der von mir hochgeladenen Symbole hatte irgendeine Transparenz, aber die Übermittlung ist fehlgeschlagen, nur weil sie in einem Format gespeichert wurden, das Transparenz zuließ. seufzen
devios1

2
Bitte schön. Eigentlich habe ich das Programm für mich selbst gemacht, weil ich frustriert war, als ich meine Apps bei Apple eingereicht habe. Dann habe ich beschlossen, es mit der Community zu teilen. Es ist Open Source auf Github. Sie können sich den Code ansehen oder verwenden, wie Sie möchten.
Bpolat

1
Perfekt! Du hast mir heute ein oder zwei Stunden gespart. 475 Bilder zum Hochladen aufgrund einer Neugestaltung!
Nancy

72

Verwenden Sie das mogrifyTool aus dem ImageMagickPaket, um den Alphakanal zu entfernen.

brew install imagemagick
cd folder_with_images
mogrify -alpha off */*.png

Update vom 3. Mai

Sie können feststellen, ob das Bild einen Alphakanal enthält, indem Sie Folgendes ausführen:

sips -g all image.png

Für den Fall , machen Sie Screenshots in iOS Simulator Sie Alpha - Kanal , indem man fallen kann BOOL opaque = YESzu UIGraphicsBeginImageContextWithOptions:

UIGraphicsBeginImageContextWithOptions(imageSize, YES, 0); 

3
Die kürzere Ausgabe zur Überprüfung von Alpha kann mit Befehl erreicht werdensips -g hasAlpha *.png
Anton Matosov

mogrify -alpha aus 👍
System

27

Sie müssen Alphakanäle entfernen, wenn Sie ein Foto zu iTunes Connect hochladen.

Sie können dies über Vorschau, Foto-App (altes iPhoto), Pixelmator, Adobe Photoshop und GIMP tun.

Vorschau

1- Öffnen Sie das Foto in der Vorschau (wenn sich das Foto in Ihrem Fotoalbum in der Foto-App befindet (das alte iPhoto), ziehen Sie es einfach vom Album auf den Desktop. Klicken Sie dann bei gedrückter Ctrl-Taste (Rechtsklick mit der Maus) auf das duplizierte Foto und Wählen Sie Preview.app im Menü Öffnen mit.

2- Wählen Sie Exportieren ... im Menü Datei. Deaktivieren Sie nach Auswahl des Ziels unten Alpha und klicken Sie auf Exportieren .

Datei ==> Exportieren ...

Alpha

Pixelmator

1- Öffnen Sie das Bild in Pixelmator, ohne eine neue Pixelmator-Datei zu erstellen . Ziehen Sie das Foto einfach in das Pixelmator-Fenster.

2- Klicken Sie im Menü Freigeben auf Für Web exportieren ...

PM

3- Deaktivieren Sie in der oberen Leiste die Option Transparenz .

4- Klicken Sie auf Weiter und speichern Sie die neue Datei irgendwo.

Laden Sie schließlich das neue Foto in iTunes Connect hoch.

GIMP

1- Öffnen Sie das Foto in GIMP.

2- Öffnen Sie das Ebenenmenü .

3- Klicken Sie unter Transparenz auf Alpha-Kanal entfernen .

4- Speichern Sie das Foto.

Adobe Photoshop

1- Öffnen Sie das Foto in Adobe Photoshop.

2- Unter Layer - Menü klicken Sie auf Maskenebene und dann von Transparenz .

3- Löschen Sie die Ebenenmaske, indem Sie im Ebenenbedienfeld mit der rechten Maustaste auf die Maske klicken und Ebenenmaske löschen auswählen .


1
Dies funktioniert unter Mac OS High Sierra nicht. Bitte versuchen Sie eine niedrigere Version, um ohne Alpha zu exportieren. Hoffe es hilft jemandem.
Satheeshwaran

11

Wenn Sie Photoshop verwenden, gehen Sie zu Datei> Für Web speichern (Befehl + Option + Umschalt + S). Stellen Sie sicher, dass die Transparenz deaktiviert ist und dies funktionieren sollte.


Seltsam. Dies funktioniert für Einzelbilder. Wenn ich jedoch versuche, Aktionen zu speichern und einen Stapelexport durchzuführen, haben die resultierenden Bilder immer noch Alpha.
Kelin

6

Noch ein Problem im Jahr 2019: =)

Dies hat bei mir funktioniert: Wählen Sie alle Bilder aus, die Sie hochladen möchten -> Rechtsklick -> In Vorschau öffnen -> Exportieren -> Alpha deaktivieren -> Exportierte Bilder verwenden.


5

In Pixelmator können Sie "Teilen> Für Web exportieren ..." ( + + E) verwenden.

Geben Sie hier die Bildbeschreibung ein

und deaktivieren Sie Transparenz in der Symbolleistenleiste.

Geben Sie hier die Bildbeschreibung ein


5

Erweiterung der Antwort von Roman B. Dies ist immer noch ein Problem, ich habe eine Cordova-App hochgeladen. meine Lösung mit mogrify:

brew install imagemagick
* navigate to `platforms/ios/<your_app_name>/Images.xcassets/AppIcon.appiconset`*
mogrify -alpha off *.png

Dann erfolgreich archiviert und validiert. 👍


4

Ich habe das gleiche Problem, komprimiere einfach deine PNG-Datei auf https://tinypng.com/ online und versuche dann, diese neue komprimierte PNG-Datei hochzuladen.

seine Arbeit für mich.


Dies funktionierte nicht für mich - es hatte immer noch einen Alpha-Kanal
Andrew

4

Ich war in der Lage, imageoptim zu verwenden, um Alpha-Kanal zu entfernen und PNG-Dateien zu komprimieren.


3

Sie können den Alphakanal mit pngcrush aus einer PNG-Datei von der Befehlszeile entfernen, indem Sie das Flag "-c 2" verwenden:

$ file input.png
input.png: PNG image data, 1024 x 1024, 8-bit/color RGBA, non-interlaced
$ pngcrush -q -c 2 input.png output.png
libpng warning: iCCP: known incorrect sRGB profile
$ file output.png
output.png: PNG image data, 1024 x 1024, 8-bit/color RGB, non-interlaced

Beachten Sie den Wechsel von RGBA zu RGB: Der Alpha-Kanal ist weg!

pngcrush lebt unter http://pmt.sourceforge.net/pngcrush/


2

Angesichts des gleichen Problems versuchen Sie es mit dem JPG-Format! Was für mich hier funktioniert hat, war die Verwendung einer JPG-Datei anstelle von PNG, da JPG-Dateien keine Alpha- oder Transparenzfunktionen verwenden. Ich habe es über den Online-Bildkonverter gemacht oder Sie können das Bild auch in der Vorschau öffnen und dann Datei-> Exportieren und Alpha als Option deaktivieren, um das Bild zu speichern und dieses Bild zu verwenden.


1

Um das Problem zu umgehen, habe ich meine PNG32-Dateien per Feuerwerk in PNG konvertiert, um sie schnell und einfach hochzuladen. JPEG funktioniert auch, aber es ist verlustbehaftet.


1

Angesichts des gleichen Problems versuchen Sie es mit dem JPG-Format!


1

Photoshop

  1. Schneide es
  2. Für das Web speichern
  3. Deaktivieren Sie Transparenz

0

Wenn Sie imagemagick installiert haben, können Sie den folgenden Alias ​​in Ihr .bash_profile einfügen. Es konvertiert jedes PNG in einem Verzeichnis in ein JPG, wodurch das Alpha automatisch entfernt wird. Sie können die resultierenden JPG-Dateien als Screenshots verwenden.

alias pngToJpg='for i in *.png; do convert $i ${i/.png/}.jpg; done'

jpg bedeutet Qualitätsminderung, das würde ich nicht tun, nur wenn ich es wirklich brauche, um tatsächlich kleiner zu sein.
Zsolt Szatmari

0

Was für mich hier funktioniert hat, war die Verwendung einer JPG-Datei anstelle von PNG, da JPG-Dateien keine Alpha- oder Transparenzfunktionen verwenden. Ich habe es über den Online-Bildkonverter gemacht oder Sie können das Bild auch in der Vorschau öffnen und dann Datei-> Exportieren und Alpha als Option deaktivieren, um das Bild zu speichern und dieses Bild zu verwenden.


Ja, aber Sie fragen nach Problemen bei der Verwendung von JPEGs. Sie sind von Natur aus für "verrauschte" Bilder wie Fotos konzipiert, führen jedoch zu Artefakten auf Bildern mit vielen Blockfarben und geraden Kanten wie Screenshots.
JamEngulfer

0

Sie können einfach ein neues Photoshop-Dokument erstellen und den Standardhintergrund auf Weiß anstatt auf Transparent setzen. Kopieren Sie dann Ihr Bild, fügen Sie es in das neu erstellte Dokument ein und speichern Sie es.


0

Sie können in der Vorschau ohne Alpha nach PNG exportieren. Öffnen Sie einfach Ihr Bild, wählen Sie Exportieren, wählen Sie PNG, deaktivieren Sie Alpha und klicken Sie auf Speichern. Die Vorschau unterstützt auch den Stapelexport, wenn Sie alle Bilder gleichzeitig öffnen.


0

Export aus Sketch

Stellen Sie zur Vermeidung von Transparenz sicher, dass sich keine Ebene über die Zeichenflächengrenzen hinaus erstreckt.


-2

Konvertieren Sie Ihr PNG-Bild in das JPEG-Format.


ITunes Connect akzeptiert für einige Dinge kein JPEG. Das IOS App-Symbol muss beispielsweise png sein.
Eclux
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.