是否有一种方法来创建xxhdpi, xhdpi, hdpi, mdpi和ldpi绘制从一个大规模的图像自动?例如,假设我有一个512x512的图像,我想在适当的文件夹中有这个图像的不同版本,用于Android支持的不同屏幕分辨率。


当前回答

我写了一个Photoshop脚本,从PSD文件创建ic_launcher png文件。只需检查ic_launcher_export。

要使用它,只需下载它,并从photoshop中使用脚本。

并配置要生成输出文件的位置。

其他回答

Android中一个简单的插件就能帮到你 步骤1。进入设置 步骤2。点击插件 步骤3。搜索Android Drawable Importer 步骤4。安装插件并重新启动

如何使用?

进入“文件>新建>批量可绘制导入”

享受

最简单的方法是使用资源管理器

然后你可以选择每个密度

导入后,你可以看到这张图片的6个不同版本

选项#1:只发布-xxhdpi绘制图,让Android在运行时为你对它们进行采样(缺点:只能在最近的设备上工作,其中-xxhdpi是已知的)。

选项2:使用Android Asset Studio对它们进行采样。

选项3:根据ssantos的回答,在图形编辑器中自动化这个过程。

选项4:自己编写解决方案的脚本,使用ImageMagick之类的东西。

选项#5:使用图像烘焙器

不是100%自动,但我用Photoshop动作节省了很多时间。

例如,给定xhdpi资产,然后为hdpi和mdpi创建一个任务,其规模分别为66.66%和44.44%。然后运行文件夹xhdpi上所有图像的操作。

对于512x512的图像,所要做的就是计算缩放图像的百分比,以实现xxhpi、xhdpi、hdpi和mdpi。

更新:

之前提到的插件已经被放弃了,但它显然有一个最新的分支。

旧的回答:

我使用名为Android Drawable Importer的Android Studio插件:

要在安装后使用它,右键单击您的res/drawable文件夹,并选择New > Batch drawable Import:

然后通过+按钮选择你的图像,并将分辨率设置为xxhdpi(或任何你的源图像的分辨率)。