Android Studio 更改图像资产的透明度
Posted
技术标签:
【中文标题】Android Studio 更改图像资产的透明度【英文标题】:Android Studio change transparency of Image Assets 【发布时间】:2016-08-21 15:24:40 【问题描述】:当我在 android Studio 中使用我自己的图标作为基础创建新的“图像资源”(操作栏和选项卡图标)时,我最终得到了半透明的图标。 (Android Studio 改变原来的颜色透明度)。如何防止它并保存原始颜色? 这是下载到 Android Studio 之前的图像(纯黑色)
这是在使用图像资源下载到 Android Studio 之后,我设置了白色。它变得透明了。
【问题讨论】:
一个可以考虑的解决方案:***.com/a/62150079/7210237 类似于@Gjchoza 的回复,但是使用了另一个官方的在线工具。 【参考方案1】:我也犯了这个愚蠢的错误……在添加图像资源时……请注意下拉菜单中的“形状”选项。选择无,以便图像在 Android Studio 中显示为透明。
【讨论】:
我没有意识到Icon Type
输入下方的区域是可滚动的,并且那里还有其他选项(包括颜色!)。谢谢 - 很好的指针【参考方案2】:
我有同样的问题,并通过 imagemagick 在转换后找到了解决方案。
convert ic_action.png -fuzz 50% -channel RGBA -fill white -opaque white ic_action.png
我们选择所有半白色并替换为纯白色。也适用于黑色:
convert ic_action.png -fuzz 50% -channel RGBA -fill black -opaque black ic_action.png
结果是:
最后还有一些技巧和窍门,如何在 bash 中将 ic_action.png 转换为一行。从项目根目录执行。
首先找到icon的所有文件:
find app/src -name "ic_action_name.png"
接下来使用xargs
获取它,名称为ICON
:
xargs -iICON
并获取命令:
find app/src -name "ic_action_name.png" | xargs -iICON convert ICON -fuzz 50% -channel RGBA -fill white -opaque white ICON
将ic_action_name.png
替换为您的图标名称,如果需要将white
替换为black
或其他颜色(imagemagick也支持RGB语法'#FF0000'
)。
【讨论】:
对于mac os xargs,使用xargs -IICON
(大“I”而不是小“i”):【参考方案3】:
您可以取消选中此图标以查看背景颜色...
【讨论】:
感谢您的关注。是的,但它确实改变了图标的透明性。我更新了我的问题并添加了新的图像和描述。你也可以看到我的问题***.com/questions/36882124/… @ElamanAitymbet 好吧...你需要带背景的图标吗?我真的不明白你需要什么。 我只想使用 Image Asset.Only 将图像颜色从黑色更改为白色!但是当我在 tablayout 图标中使用它时,我发现图标颜色透明 @ElamanAitymbet 为什么不使用photoshop
或类似的其他程序更改图标背景并导入具有背景颜色的项目?或者...您可以将图标放在LinearLayour
(或其他)中,然后将background Color
放在背景中的layout
中【参考方案4】:
在 android studio 3.0 中删除默认背景颜色的简单方法
步骤 1:在 mipmap 文件夹中选择新的图像断言 mipmap->new->图像断言
第 2 步:选择 前景标签 并将您的图标图像加载到文件位置路径中, 根据您的视图调整图像集,可用选项如(修剪,调整大小)
步骤 3:然后选择背景选项卡并从路径定位器选项卡中删除路径。
第4步:转到mipmap文件夹下的ic_lancher.xml
文件,
然后删除
代码行。
第五步:对mipmap文件夹下的ic-launcher_round.xml
文件做同样的操作
<background android :drawable="@mipmap/ic_lancher_round_background"/>
然后你可以找到没有android studio默认绿色封面背景的图标。 step_1step_2step_3 step_4
【讨论】:
【参考方案5】:为了纠正这个不需要的 alfa,我确保 Android Studio 为这个可绘制对象创建一个 XML,比我编辑它,像这里“ic_cinema.xml”:
所以,现在我删除或编辑 alfa 参数
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:
android:
android:viewportWidth="24"
android:viewportHeight="24"
android:tint="#FFFFFF"
android:alpha="0.8"> <!-- HERE YOU MAKE YOUR CHANGE -->
<path
android:fillColor="#FF000000"
android:pathData="M18,4l2,4h-3l-2,-4h-2l2,4h-3l-2,-4H8l2,4H7L5,4H4c-1.1,0 -1.99,0.9 -1.99,2L2,18c0,1.1 0.9,2 2,2h16c1.1,0 2,-0.9 2,-2V4h-4z"/>
</vector>
【讨论】:
【参考方案6】:我没有找到配置图像资源(操作栏和选项卡图标)的方法,因此它不会生成半透明图标。
但是,如果您选择“通知图标”而不是“操作栏和选项卡图标”,则生成的图标集不是半透明的(它是不透明的)。我目前正在为我的操作栏和选项卡使用生成的图标。
另外,我发现了以下网站 https://romannurik.github.io/AndroidAssetStudio/index.html,它模仿 Image Asset Studio 并生成不透明的图标集。
【讨论】:
【参考方案7】:感谢@Gjchoza。 this 网站帮助我创建了我所需要的漂亮图标。
甚至 Android Studio 4.0 的 Image Asset Creation 工具都无法满足我的需求。
【讨论】:
以上是关于Android Studio 更改图像资产的透明度的主要内容,如果未能解决你的问题,请参考以下文章
当我尝试创建图像资产时,Android Studio 中不存在文件 Logo.png
如何在Android Studio中使图像中的特定颜色透明?