"Images can't contain alpha channels or transparencies."
答案 0 :(得分:445)
我发现您也可以在预览中重新导出png,但在保存时取消选中Alpha复选框。
答案 1 :(得分:240)
不允许使用具有透明度的AFAIK png。使用jpg或更新你的png(photoshop或你用来创建png的任何东西)并删除透明区域。如果你使用阴影,使用jpg,这将不会令人头疼。
答案 2 :(得分:82)
答案 3 :(得分:80)
这么容易......
在预览应用中打开图片点击文件 - >出口和 取消选中Alpha
答案 4 :(得分:65)
使用mogrify
包中的ImageMagick
工具删除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);
答案 5 :(得分:23)
将照片上传到iTunes Connect时,您必须删除Alpha通道。
您可以通过预览,照片应用程序(旧版iPhoto),Pixelmator,Adobe Photoshop和GIMP来完成此操作。
预览强>
1-在预览中打开照片(如果照片在照片应用程序(旧的iPhoto)中的相册中,则只需将其从相册拖到桌面。然后按住Control键单击(鼠标右键单击)复制照片并在“打开方式”菜单下选择 Preview.app 。
2-选择文件菜单下的导出... ,选择目的地后,取消选中底部的 Alpha ,然后点击导出
<强> Pixelmator 强>
1-在Pixelmator中打开图像,而不创建新的Pixelmator文件。只需将照片拖到Pixelmator窗口即可。
2-从“共享”菜单中,单击导出为Web ...
3-在顶部栏中,取消选择透明度。
4-单击下一步,然后将新文件保存到某处。
最后,将新照片上传到iTunes Connect。
<强> GIMP 强>
1-在GIMP中打开照片。
2-打开图层菜单。
3-在透明度下,单击删除Alpha通道。
4-保存照片。
Adobe Photoshop
1-在Adobe Photoshop中打开照片。
2-在图层菜单下,单击图层蒙版,然后单击从透明度。
3-通过右键单击“图层”面板中的蒙版并选择删除图层蒙版来删除图层蒙版。
答案 6 :(得分:10)
如果您使用Photoshop,请转到文件&gt;保存为Web(Command + Option + Shift + S)。确保未选中透明度,这应该有效。
答案 7 :(得分:5)
在Pixelmator上,您可以使用'分享&gt;导出为Web ...'(⇧ + ⌘ + E )
并在工具选项栏中取消选择透明度。
答案 8 :(得分:4)
我能够使用 imageoptim 删除Alpha频道并压缩png文件。
答案 9 :(得分:4)
我遇到同样的问题,只需在https://tinypng.com/在线压缩你的png文件,然后尝试上传新的压缩png文件。
它为我工作。
答案 10 :(得分:3)
您可以使用pngcrush从命令行中删除PNG文件中的Alpha通道,使用标记&#34; -c 2&#34;:
$ 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/答案 11 :(得分:2)
2019年仍然是一个问题:=)
这对我有用: 选择所有要上传的图像->右键单击->在预览中打开->导出->取消选中Alpha->使用导出的图像。
答案 12 :(得分:2)
面对同样的问题,请尝试使用JPG格式!!这里对我有用的是使用jpg文件而不是PNG,因为jpg文件不使用alpha或透明度功能。我是通过在线图像转换器完成的,或者您也可以在预览中打开图像,然后按文件 - >导出并取消选中alpha作为选项以保存图像并使用此图像。
答案 13 :(得分:1)
为了解决这个问题,我使用fireworks将我的png32文件转换为png24,以便快速轻松地上传。 Jpeg也有效,但它有损。
答案 14 :(得分:1)
扩展罗马B.答案。这仍然是一个问题,我上载了cordova应用。我使用mogrify
的解决方案:
brew install imagemagick
* navigate to `platforms/ios/<your_app_name>/Images.xcassets/AppIcon.appiconset`*
mogrify -alpha off *.png
然后成功存档和验证。 ?
答案 15 :(得分:1)
的Photoshop
答案 16 :(得分:1)
面对同样的问题,请尝试使用JPG格式!!
答案 17 :(得分:0)
您可以简单地创建一个新的Photoshop文档,并将其默认背景设置为白色而不是透明。然后,将图像复制并粘贴到新创建的文档中并保存。
答案 18 :(得分:0)
这里对我有用的是使用jpg文件而不是PNG,因为jpg文件不使用alpha或透明度功能。我是通过在线图像转换器完成的,或者您也可以在预览中打开图像,然后按文件 - >导出并取消选中alpha作为选项以保存图像并使用此图像。
答案 19 :(得分:0)
如果安装了imagemagick,则可以将以下别名放入.bash_profile中。它会将目录中的每个png转换为jpg,从而自动删除alpha。您可以使用生成的jpg文件作为屏幕截图。
alias pngToJpg='for i in *.png; do convert $i ${i/.png/}.jpg; done'
答案 20 :(得分:0)
您可以在预览中导出为不带alpha的PNG。只需打开图像,选择导出,选择PNG,取消选中Alpha,然后单击保存。如果您一次打开所有图像,预览版还支持批量导出。
答案 21 :(得分:0)
为避免透明,请确保没有任何层超出画板范围。
答案 22 :(得分:-2)
将PNG图像转换为JPEG格式。