1

我决定在我的最新项目中试一试 Gradle,该项目包含我使用 gimp 创建的图形。

我在我的项目中使用 git,并且拒绝在我的存储库中提交 exportet .png -graphics。相反,我想保存 gimps .xcf文件,以便以后能够编辑图形。

但是,我的 android 应用程序将需要它们作为.png文件,并且它们有很多,而且我也在尝试完全自动化我的构建过程,所以我希望 Gradle在执行时从我的.xcf文件构建.png -graphics 。gradle build

有一个用于 gradle 的 ImageMagick 插件无法正常工作,因为它会生成具有透明度问题的图像。例子:

这是 gradle 创建的图像:

在此处输入图像描述

这就是它的样子(从 gi​​mp 导出):

在此处输入图像描述

没有隐藏层,它们也没有不透明度。

构建.gradle:

buildscript {
  repositories {
    mavenCentral()
  }

  dependencies {
    classpath 'com.eowise:gradle-imagemagick:0.4.0'
  }
}

task build(type: com.eowise.imagemagick.tasks.Magick) {
    convert 'xcf/', { include '*.xcf' }
    into 'png/'
    actions {
    -alpha('on')
    -background('none')
    inputFile()
    -flatten()
        outputFile { filename, extension -> "${filename}.png" }
    }
}

task clean() {
    FileTree tree = fileTree (dir: "xcf/");
    tree.each { File file ->
        File pngFile = new File("png/" + file.name.replaceFirst(~/\.[^\.]+$/, '') + ".png")
        pngFile.delete()
    }
}

这些问题似乎与 ImageMagick 本身(来源:google)有关,它与.xcf -Files 存在问题。(我也只是在命令行上运行该命令,它会生成具有相同问题的图像。)

XCF工具

然而,有一个名为xcftools的工具箱可以正确导出图像。

但是,它仅作为托管在 github 上的 git 存储库提供,并且是使用gnu 构建系统构建的。( ./configure && make)。

因为我假设构建我的项目的人没有安装 xcftools 并且它也不适用于所有发行版。

这就是为什么我希望将它作为一个依赖项,这导致我提出我的问题:

如何将 git-repositories 作为依赖项(或存储库)添加到 Gradle?

如何让 Gradle 构建它以编译时间然后使用它?

4

0 回答 0