图像不能包含Alpha通道或透明胶片

苹果发布了iTunes Connect的新版本,当我尝试在iTunes上为我的应用程序设置屏幕截图时,我收到了一条错误消息。

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

在这里输入图像说明

AFAIK PNG与透明度是不允许的。 使用JPG或更新您的PNG(Photoshop或任何你用来创buildPNG),并删除透明区域。 如果你使用阴影,使用JPG,这将不会头痛。

我发现你也可以重新导出PNG的预览,但保存时取消选中阿尔法checkbox。

在这里输入图像说明

为此我做了一个新的简单的工具。 您可以在几秒钟内删除多个.png文件的Alpha通道(透明度)。

Alpha通道卸妆

你可以从这里下载http://alphachannelremover.blogspot.com

使用ImageMagick软件包中的mogrify工具删除Alpha通道。

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

5月3日更新

您可以通过运行来判断图像是否包含alpha通道:

 sips -g all image.png 

如果您在iOS模拟器中渲染屏幕截图,则可以通过将BOOL opaque = YES传递给UIGraphicsBeginImageContextWithOptions来删除Alpha通道:

 UIGraphicsBeginImageContextWithOptions(imageSize, YES, 0); 

这么容易…

预览应用程序中打开图像单击文件 – >导出取消选中阿尔法

上传照片到iTunes Connect时,您必须删除Alpha通道。

您可以通过预览,照片应用程序(旧iPhoto),Pixelmator,Adobe Photoshop和GIMP来做到这一点。

预习

1-在预览中打开照片(如果照片位于照片应用程序(旧iPhoto)的相册中,则只需将其从相册拖到桌面,然后按住鼠标右键(复制照片时单击鼠标右键)select打开方式菜单下的Preview.app )。

2-select文件菜单下的导出… ,select目的地后,取消选中底部的阿尔法 ,然后单击导出

文件==>导出...

Α

Pixelmator

1-在Pixelmator中打开图像, 不创build新的Pixelmator文件 。 只需将照片拖到Pixelmator窗口。

2-从共享菜单中,单击导出为Web …

下午

3-在顶部栏中,取消select透明度

4-单击“ 下一步” ,然后将新文件保存在某处。

最后,将新照片上传到iTunes Connect。

GIMP

1-在GIMP中打开照片。

2-打开图层菜单。

3-在透明度下 ,单击删除Alpha通道

4-保存照片。

Adobe Photoshop

1-在Adobe Photoshop中打开照片。

2-在图层菜单下,点击图层蒙版 ,然后点击透明

3-通过在“图层”面板中右键单击蒙版并select“ 删除图层蒙版”删除图层蒙版

如果您使用Photoshop,请转到“文件”>“保存为网页”(Command + Option + Shift + S)。 确保透明度未被选中,这应该工作。

我能够使用imageoptim删除alpha通道和压缩PNG文件。

在Pixelmator上,您可以使用“共享>导出为Web …”( + + E

在这里输入图像说明

并在工具选项栏中取消select透明度

在这里输入图像说明

你可以用pngcrush从命令行删除一个PNG文件的alpha通道,使用标志“-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 

注意从RGBA到RGB的变化:Alpha通道消失了!

pngcrush活在http://pmt.sourceforge.net/pngcrush/

面对同样的问题,尝试使用JPG格式! 我在这里工作的是使用jpg文件,而不是PNG,因为jpg文件不使用alpha或透明度function。 我通过在线图像转换器完成,或者您也可以在预览中打开图像,然后select文件 – >导出,然后取消选中字母作为选项来保存图像并使用此图像。

为了解决这个问题,我使用fireworks将我的png32文件批量转换为png24,以便上传。 Jpeg的作品也是有损的。

面对同样的问题,尝试使用JPG格式!

Photoshop 1.切片2.保存为网页3.取消选中透明度

如果你安装了imagemagick,那么你可以把下面的别名放到你的.bash_profile中。 它会将目录中的每个png转换为jpg,这会自动删除alpha。 您可以使用生成的jpg文件作为屏幕截图。

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

我在这里工作的是使用jpg文件,而不是PNG,因为jpg文件不使用alpha或透明度function。 我通过在线图像转换器完成,或者您也可以在预览中打开图像,然后select文件 – >导出,然后取消选中字母作为选项来保存图像并使用此图像。

您可以简单地创build一个新的Photoshop文档,并将其默认背景设置为白色而不是透明。 然后,将图像复制并粘贴到新创build的文档并保存。

将您的PNG图像转换为JPEG格式。