"Images can't contain alpha channels or transparencies."
#1 楼
不允许使用具有透明性的AFAIK png。使用jpg或更新您的png(photoshop或用于创建png的任何东西)并删除透明区域。如果要处理阴影,请使用jpg,这不会让人头疼。评论
也为我工作。
–蜂蜜
2014年9月5日在11:22
JPEG有损,这是一个可怕的想法。查看其他答案,并适当删除透明度。
–鲁道夫·亚当科维奇
2014年9月16日上午10:18
只需在预览中打开并导出为JPEG即可解决此问题。 XCode的设备屏幕截图保存在PNG中,这就是问题所在。使用设备拍摄屏幕(主页按钮+电源按钮)以JPEG格式保存。
–Anna Billstrom
2014年12月20日在18:24
您可以在预览中导出为不带alpha的PNG。只需打开图像,选择导出,选择PNG,取消选中Alpha,然后单击保存。如果您一次打开所有图像,预览版还支持批量导出。
–拉塞尔·拉德(Russell Ladd)
2015年1月7日在6:23
好的答案,但我注意到.jpg效果不佳,所以我只是在Photoshop中打开图像并设置背景层并设置其白色,以便去除图像透明度并将此图像用作PNG。
– Nitin Gohel
15年3月30日在5:12
#2 楼
我发现您也可以在预览中重新导出png,但是在保存时取消选中Alpha复选框。评论
考虑到他们推荐您这样做,iTunes Connect不接受Xcode生成的屏幕截图是很荒谬的。
–多伦多
2014年11月8日在21:09
由于某些莫名其妙的原因,当我这样做时,它会将尺寸切成两半,现在对于iTC来说是“错误的尺寸”! WTF苹果???
– har
2014年12月19日在23:53
可以理解的是,手头仅有$ 178B的现金,Apple无法承担解决这个愚蠢的bug的麻烦,并且需要成千上万的开发人员一次又一次地繁琐地执行此操作。啊。
–内特
2015年2月5日,下午3:47
我可以给这个人100票来解决我的问题吗
– Noor
2015年4月21日在17:15
双击照片“文件”->“导出...”
– Arjay Waran
17年6月28日在1:27
#3 楼
如此简单...在“预览”应用中打开图像,单击“文件”->“导出”,然后
取消选中alpha
评论
这在Mac OS High Sierra上不起作用,请尝试使用较低版本导出而不使用Alpha。希望它能帮助某人。
– Satheesh
17年12月19日在10:36
非常简单的解决方案。谢谢!
– Lina T
18年6月21日在22:45
在卡塔利娜州工作。用白色替换所有透明度。
–马西
20-2-23在19:05
#4 楼
为此,我做了一个新的简单工具。您可以在几秒钟内删除多个.png文件的alpha通道(透明度)。您可以从此处下载http://alphachannelremover.blogspot.com
评论
谢谢。我讨厌苹果公司在捕获,保存屏幕快照并将其发送到iTunesConnect商店的过程中又增加了一步。
–安德鲁·史密斯(Andrew Smith)
2014年9月24日下午16:28
该工具非常简单,但非常有用。否则,我不得不花时间使用Apple的Preview App逐个删除透明度,这非常耗时。现在,只需一次拍摄就可以制作多个文件。
– bpolat
2014年9月24日20:18在
非常方便,谢谢!对于苹果公司拥有的所有程序员,您都认为他们可以自动剥离Alpha通道。我发誓我上传的所有图标都没有任何透明度,但是提交失败只是因为它们以允许透明的格式保存。叹
– devios1
2014年11月13日在22:54
别客气。实际上,由于我在将应用程序提交给Apple时感到沮丧,因此我为自己编写了该程序,然后决定与社区共享它。它是github上的开源代码,您可以查看代码或使用自己喜欢的代码。
– bpolat
2014年11月13日22:58
完善!你今天救了我一两个小时。经过重新设计,有475张图片要上传!
–南希
15年2月4日在16:37
#5 楼
使用mogrify
软件包中的ImageMagick
工具删除Alpha通道。brew install imagemagick
cd folder_with_images
mogrify -alpha off */*.png
从5月3日开始更新
您可以通过运行来判断图像是否包含Alpha通道。 :
sips -g all image.png
如果在iOS Simulator中渲染屏幕截图,则可以通过将
BOOL opaque = YES
传递给UIGraphicsBeginImageContextWithOptions
来删除Alpha通道:UIGraphicsBeginImageContextWithOptions(imageSize, YES, 0);
评论
可以使用命令sips -g hasAlpha * .png来实现较短的输出以检查alpha。
–安东·马托索夫(Anton Matosov)
2015年12月27日在7:15
迁移-alpha off👍
–系统
18年7月14日在18:08
#6 楼
将照片上传到iTunes Connect时,必须删除Alpha通道。
您可以通过Preview,Photos App(旧iPhoto),Pixelmator,Adobe Photoshop和GIMP进行此操作。
预览
在“预览”中打开照片(如果照片在“照片”应用(旧的iPhoto)的相册中,则只需将其从相册拖到桌面即可。 (在鼠标上单击鼠标右键)复制的照片,然后在“打开方式”菜单下选择“ Preview.app”。
在“文件”菜单下选择“导出...”,然后选择目标位置,然后取消选中“单击底部,然后单击导出。
Pixelmator
在Pixelmator中打开图像,而无需创建新的Pixelmator文件。只需将照片拖到Pixelmator窗口即可。
从“共享”菜单中,单击“导出为Web”…
在顶部栏,取消选择透明度。
,单击“下一步”,然后将新文件保存在某个地方。
最后,将新照片上传到iTunes Connect。 br /> GIMP
在GIMP中打开照片。
打开“图层”菜单。
在透明度下,单击删除Alpha通道。
保存照片。
Adobe Photoshop
在Adobe Photoshop中打开照片。
在“图层”菜单下,单击“图层蒙版”,然后单击“从透明度”。
按右删除图层蒙版单击“图层”面板中的遮罩,然后选择“删除图层遮罩”。
评论
这在Mac OS High Sierra上不起作用,请尝试使用较低版本导出而不使用Alpha。希望它能帮助某人。
– Satheesh
17年12月19日在10:37
#7 楼
如果您使用的是Photoshop,请转到“文件”>“保存为Web”(命令+选项+ Shift + S)。确保未选中透明度,这应该可以工作。评论
奇怪。这适用于单个图像。但是,当我尝试保存操作并执行批量导出时,生成的图像仍然具有Alpha。
– kelin
17年8月28日在22:29
#8 楼
在2019年仍然是一个问题:=)这对我有用:
选择要上传的所有图像->右键->在预览中打开->导出->取消选中Alpha->使用导出的图像。
#9 楼
扩展罗马B.答案。这仍然是一个问题,我上载了cordova应用。我的解决方案使用mogrify
:brew install imagemagick
* navigate to `platforms/ios/<your_app_name>/Images.xcassets/AppIcon.appiconset`*
mogrify -alpha off *.png
,然后成功存档并验证。 👍
评论
非常感谢!
–FortuneCookie
20 Dec 15 '14:40
#10 楼
在Pixelmator上,可以使用“共享>导出为Web ...”(⇧+⌘+ E),然后在工具选项栏中取消选择透明度。
#11 楼
我也遇到同样的问题,只是在线上将您的png文件压缩到https://tinypng.com/,然后尝试上传该新的压缩png文件。它对我有用。
评论
这对我不起作用-它仍然具有Alpha通道
–安德鲁(Andrew)
16年4月13日在15:26
#12 楼
我能够使用imageoptim删除Alpha通道并压缩png文件。#13 楼
您可以使用标志“ -c 2”从命令行使用pngcrush从PNG文件中删除Alpha通道:$ 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/
#14 楼
面对同样的问题,尝试使用JPG格式!在这里对我有用的是使用jpg文件而不是PNG,因为jpg文件不使用Alpha或透明度功能。我是通过在线图像转换器完成的,或者您也可以在预览中打开图像,然后打开File-> Export并取消选中alpha作为保存图像并使用此图像的选项。#15 楼
为了解决这个问题,我使用fireworks将png32文件批量转换为png24,以便快速,轻松地上传。 Jpeg也可以,但是有损。#16 楼
面对同样的问题,请尝试使用JPG格式!!#17 楼
Photoshop对其进行切片
另存为Web
取消选中透明度
#18 楼
您可以在预览中导出为不带alpha的PNG。只需打开图像,选择导出,选择PNG,取消选中Alpha,然后单击保存。如果一次打开所有图像,预览版还支持批量导出。#19 楼
如果安装了imagemagick,则可以将以下别名放入.bash_profile中。它将目录中的每个png转换为jpg,从而自动删除Alpha。您可以将生成的jpg文件用作屏幕截图。alias pngToJpg='for i in *.png; do convert $i ${i/.png/}.jpg; done'
评论
jpg意味着质量下降,只有当我真的需要缩小尺寸时,我才这样做。
– Zsolt Szatmari
2015年2月1日,9:32
#20 楼
在这里对我有用的是使用jpg文件而不是PNG,因为jpg文件不使用Alpha或透明度功能。我是通过在线图像转换器完成的,或者您也可以在预览中打开图像,然后打开File-> Export并取消选中alpha作为保存图像并使用此图像的选项。评论
是的,但是您在使用jpeg时遇到了麻烦。它们本质上是为“嘈杂”图像(如照片)设计的,但会导致在具有大量色块和笔直边缘(如屏幕截图)的图像上出现失真。
– JamEngulfer
2015年4月14日在10:15
#21 楼
您可以简单地创建一个新的Photoshop文档,并将其默认背景设置为“白色”,而不是“透明”。然后,将图像复制并粘贴到新创建的文档中并保存。#22 楼
从Sketch导出为避免透明,请确保没有任何图层超出画板范围。
#23 楼
将您的PNG图像转换为JPEG格式。评论
iTunes Connect在某些情况下不接受jpeg。例如,iOS App图标必须为png。
–潮气
17-10-29在6:02
评论
iTunes Connect开发人员指南中未提及该内容:developer.apple.com/library/ios/documentation / ...只需将图像转换为对我有用的JPG格式!
我自己写的第一个图像上传器可以采用任何大小的jpeg,png或gif,正确旋转,然后输出所需压缩级别的jpeg。显然,我可以使图像上载器,而Apple不能。与苹果公司不同,我从来没有梦想过要用户强制“哦,只需手动从PNG剥离alpha!为每张图片!”。
当iTunes Connect不允许时,xcode允许这样做很可惜。
在这里尝试简单的步骤