我使用Android Studio
和Gradle
。
我想知道是否有任何方法在构建时自动调整不同分辨率的图像大小。我的意思是有一组图像,并自动调整大小到各种分辨率(例如xxhdpi
, xhdpi
, hdpi
, mdpi
, ldpi
)
完美的解决方案是有一些gradle插件,可以配置为在构建apk
之前在适当的文件夹中生成调整大小的图像
我开发了一个gradle插件,允许这样做(基于imagemagick)
首先,您需要将插件添加到构建脚本中:buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.eowise:gradle-imagemagick:0.4.0'
}
}
然后,为每个尺寸添加一个任务:
[
[ variant: 'mdpi', size: '33%' ],
[ variant: 'hdpi', size: '50%' ],
[ variant: 'xhdpi', size: '66%' ],
[ variant: 'xxhdpi', size: '100%' ]
].each {
item ->
task("buildIcons${item.variant.capitalize()}", type: com.eowise.imagemagick.tasks.Magick) {
convert 'resources/images', { include '*.png' }
into "app/src/main/res/drawable-${item.variant}"
actions {
-background('none')
inputFile()
-resize(item.size)
outputFile()
}
}
}
你可以在GitHub的wiki页面上找到关于如何使用这个插件的更多信息