Las imágenes no pueden contener canales alfa o transparencias


331

Apple lanzó una nueva versión de iTunes Connect y recibí un mensaje de error cuando intenté configurar Capturas de pantalla en iTunes Connect para mi aplicación.

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

ingrese la descripción de la imagen aquí


Eso no se menciona en la Guía para desarrolladores de iTunes Connect: developer.apple.com/library/ios/documentation/…
razor28

15
¡Simplemente convertir la imagen al formato JPG funcionó para mí!
Jayprakash Dubey

1
El primer cargador de imágenes que escribí yo mismo podría tomar cualquier tamaño jpeg, png o gif, rotarlo correctamente y generar un jpeg del nivel de compresión deseado. Aparentemente puedo hacer cargadores de imágenes y Apple no. Y, a diferencia de Apple, nunca soñaría con obligar a mis usuarios a "¡oh, simplemente eliminen alfa del PNG manualmente! Para cada imagen".
Henrik Erlandsson

Es lamentable que xcode lo permita cuando iTunes Connect no lo hace.
James T Snell el

Respuestas:


262

AFAIK png con transparencia no está permitido. use jpg O actualice su png (photoshop o lo que sea que esté usando para crear el png) y elimine las áreas de transparencia. si trabajas con sombras, usa jpg, eso no hará que te duela la cabeza.


También funcionó para mí. Thx
Miel

66
JPEG es con pérdida, y es una idea terrible, terrible. Vea otras respuestas y elimine adecuadamente la transparencia.
Rudolf Adamkovič

3
Simplemente abrir en Vista previa y exportar a JPEG resolvió el problema. La captura de pantalla del dispositivo XCode se guarda en PNG, que es el problema. Tomar pantallas con el dispositivo (botón de inicio + botón de encendido) se guarda en JPEG.
Anna Billstrom

33
Puede exportar a PNG sin alfa en Vista previa. Simplemente abra su imagen, elija exportar, seleccione PNG, desmarque Alfa y haga clic en Guardar. La vista previa también admite la exportación por lotes si abre todas sus imágenes a la vez.
Russell Ladd

1
Buena respuesta, pero como noto que el resultado .jpg no es bueno, así que solo abro la imagen en la capa de fondo de Photoshop y configuro su Color blanco para que se elimine la transparencia de la imagen y use esta imagen como PNG.
Nitin Gohel

467

Descubrí que también puede volver a exportar los png en Vista previa, pero desmarque la casilla de verificación Alfa al guardar.

ingrese la descripción de la imagen aquí


48
Es ridículo que iTunes Connect no acepte capturas de pantalla generadas por Xcode considerando que así es como recomiendan que lo hagas.
Joseph Toronto

¡Por alguna razón inexplicable, cuando hago esto, reduce las dimensiones a la mitad y ahora es "tamaño incorrecto" para iTC! WTF Apple ???
mharper

13
Es comprensible que con solo $ 178 mil millones en efectivo a la mano, Apple no puede permitirse el lujo de arreglar este error tonto, y requiere que decenas de miles de desarrolladores realicen tediosamente esta operación, una y otra vez. Ugh
Nate

querían que yo puedo dar a esta persona 100 votos para la solución de mi problema
Noor

2
haga doble clic en "archivo" de foto -> "Exportar ..."
Arjay Waran

102

es tan fácil...

Abra la imagen en la aplicación Vista previa, haga clic en Archivo -> Exportar y desmarque alfa


Esto no funcionará en Mac OS High Sierra, por favor intente una versión inferior para exportar sin alfa. Espero que ayude a alguien.
Satheeshwaran

Solución muy fácil. ¡Gracias!
Lina T

Trabaja en Catalina. Reemplaza cualquier transparencia con blanco.
Marcy

85

Para esto hice una nueva herramienta simple. Puede eliminar el canal alfa (transparencia) de múltiples archivos .png en segundos.

Alpha Channel Remover

Puede descargar desde aquí http://alphachannelremover.blogspot.com


17
Gracias. Odio que Apple haya agregado un paso más al proceso de capturar, guardar y enviar capturas de pantalla a la tienda iTunesConnect.
Andrew Smith

2
Esta herramienta es muy simple pero muy útil. De lo contrario, tuve que pasar tiempo con la aplicación de vista previa de Apple para eliminar la transparencia una por una, lo que consume mucho tiempo. Ahora es posible hacer múltiples archivos con una sola toma.
bpolat

1
Muy útil, gracias! Para todos los programadores que Apple tiene, pensarías que podrían quitar el canal alfa automáticamente. Juro que ninguno de los íconos que cargué tenía transparencia alguna, pero falló el envío solo porque se guardaron en un formato que permitía la transparencia. suspiro
devios1

2
De nada. En realidad, hice el programa por mí mismo como resultado de la frustración que sentía al enviar mis aplicaciones a Apple, luego decidí compartirlo con la comunidad.
bpolat

1
¡Perfecto! Me salvaste una o dos horas hoy. ¡475 imágenes para cargar debido a un rediseño!
Nancy

73

Use la mogrifyherramienta del ImageMagickpaquete para eliminar el canal alfa.

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

Actualización del 3 de mayo

Puede saber si la imagen contiene un canal alfa ejecutando:

sips -g all image.png

En caso de que realice capturas de pantalla en iOS Simulator, puede soltar el canal alfa pasando BOOL opaque = YESa UIGraphicsBeginImageContextWithOptions:

UIGraphicsBeginImageContextWithOptions(imageSize, YES, 0); 

3
La salida más corta para verificar alfa se puede lograr con el comandosips -g hasAlpha *.png
Anton Matosov

mogrify -alpha off 👍
sistema

27

Debes eliminar los canales alfa cuando subas una foto a iTunes Connect.

Puede hacerlo mediante Vista previa, Aplicación de fotos (antigua iPhoto), Pixelmator, Adobe Photoshop y GIMP.

Avance

1- Abra la foto en Vista previa (si la foto está en su álbum de fotos en la aplicación Fotos (la antigua iPhoto), luego simplemente arrástrela desde el álbum hasta el escritorio. seleccione Preview.app en Abrir con menú).

2- Seleccione Exportar ... en el menú Archivo, y después de seleccionar el destino, desactive Alfa en la parte inferior y haga clic en Exportar .

Archivo ==> Exportar ...

Alfa

Pixelmator

1- Abra la imagen en Pixelmator, sin crear un nuevo archivo Pixelmator . Simplemente arrastre la foto a la ventana Pixelmator.

2- Desde el menú Compartir, haga clic en Exportar para Web ...

PM

3- En la barra superior, anule la selección de Transparencia .

4- Haga clic en Siguiente y luego guarde el nuevo archivo en algún lugar.

Finalmente, suba la nueva foto a iTunes Connect.

CAÑUTILLO

1- Abre la foto en GIMP.

2- Abre el menú Capa .

3- En Transparencia , haz clic en Eliminar canal alfa .

4- Guarda la foto.

Adobe Photoshop

1- Abre la foto en Adobe Photoshop.

2- En el menú Capa , haga clic en Máscara de capa y luego en Transparencia .

3- Elimine la máscara de capa haciendo clic derecho en la máscara en el panel Capa y seleccionando Eliminar máscara de capa .


1
Esto no funcionará en Mac OS High Sierra, por favor intente una versión inferior para exportar sin alfa. Espero que ayude a alguien.
Satheeshwaran

11

Si está utilizando Photoshop, vaya a Archivo> Guardar para web (Comando + Opción + Mayús + S). Asegúrese de que la Transparencia esté desmarcada y que esto debería funcionar.


Extraño. Esto funciona para una sola imagen. Pero cuando trato de guardar acciones y realizar una exportación por lotes, las imágenes resultantes todavía tienen alfa.
Kelin

6

Sigue siendo un problema en 2019: =)

Esto funcionó para mí: seleccione todas las imágenes que desea cargar -> Haga clic derecho -> Abrir en Vista previa -> Exportar -> Desmarcar alfa -> Usar las imágenes exportadas.


5

En Pixelmator puede usar 'Compartir> Exportar para Web ...' ( + + E)

ingrese la descripción de la imagen aquí

y deseleccione Transparencia en la barra de opciones de herramientas.

ingrese la descripción de la imagen aquí


5

Extendiendo Roman B. respuesta. Esto sigue siendo un problema, estaba cargando una aplicación de Córdoba. mi solución usando mogrify:

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

Luego archivado y validado con éxito. 👍


4

Tengo el mismo problema, simplemente comprima su archivo png en https://tinypng.com/ en línea y luego intente cargar ese nuevo archivo png comprimido.

Es trabajo para mí.


Esto no funcionó para mí - todavía tenía un canal alfa
Andrew


3

Puede eliminar el canal alfa de un archivo PNG desde la línea de comando con pngcrush, utilizando la bandera "-c 2":

$ 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

Tenga en cuenta el cambio de RGBA a RGB: ¡el canal Alpha se ha ido!

pngcrush vive en http://pmt.sourceforge.net/pngcrush/


2

Enfrenté el mismo problema, ¡intenta usar el formato JPG! Lo que funcionó para mí aquí fue usar un archivo jpg en lugar de PNG, ya que los archivos jpg no usan funciones alfa o de transparencia. Lo hice a través del convertidor de imágenes en línea o también puede abrir la imagen en la vista previa y luego Archivo-> Exportar y desmarcar alfa como opción para guardar la imagen y usar esta imagen.


1

Para solucionar el problema, procesé en lotes mis archivos png32 a png24 para cargarlos de forma rápida y fácil. Jpeg también funciona pero es con pérdida.



1

Photoshop

  1. Rebanarlo
  2. Guardar para web
  3. Desmarque Transparencia

0

Si tiene instalado imagemagick, puede poner el siguiente alias en su .bash_profile. Convierte cada png en un directorio a un jpg, que elimina automáticamente el alfa. Puede usar los archivos jpg resultantes como capturas de pantalla.

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

jpg significa degradación de la calidad, no haría eso, solo si realmente necesito que sea más pequeño.
Zsolt Szatmari

0

Lo que funcionó para mí aquí fue usar un archivo jpg en lugar de PNG, ya que los archivos jpg no usan funciones alfa o de transparencia. Lo hice a través del convertidor de imágenes en línea o también puede abrir la imagen en la vista previa y luego Archivo-> Exportar y desmarcar alfa como opción para guardar la imagen y usar esta imagen.


Sí, pero estás pidiendo problemas para usar jpegs. Están diseñados intrínsecamente para imágenes 'ruidosas' como fotos, pero conducen a artefactos en imágenes con muchos colores de bloque y bordes rectos como capturas de pantalla.
JamEngulfer

0

Simplemente puede crear un nuevo documento de Photoshop y establecer su fondo predeterminado en Blanco en lugar de Transparente. Luego, copie y pegue su imagen en el documento recién creado y guárdelo.


0

Puede exportar a PNG sin alfa en Vista previa. Simplemente abra su imagen, elija exportar, seleccione PNG, desmarque Alfa y haga clic en Guardar. La vista previa también admite la exportación por lotes si abre todas sus imágenes a la vez.


0

Exportar desde croquis

Para evitar la transparencia, asegúrese de que ninguna capa se extienda más allá de los límites de la mesa de trabajo.


-2

Convierte tu imagen PNG a formato JPEG.


ITunes Connect no aceptará jpeg para algunas cosas. El ícono de la aplicación IOS debe ser png, por ejemplo.
eclux
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.