Android Studio / gradle:为Android自动调整图像大小



我使用Android StudioGradle

我想知道是否有任何方法在构建时自动调整不同分辨率的图像大小。我的意思是有一组图像,并自动调整大小到各种分辨率(例如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页面上找到关于如何使用这个插件的更多信息

最新更新