gpt4 book ai didi

javascript - Grunt - 修改输出文件名

转载 作者:行者123 更新时间:2023-11-30 17:28:54 25 4
gpt4 key购买 nike

我正在使用 grunt-image-resize ( https://github.com/excellenteasy/grunt-image-resize ) 来调整图像大小。但我的问题对于 Grunt 以及我们可以在任务中插入文件名的方式是通用的。

想法是拍摄大背景图像并调整它们的大小,然后通过在文件名中附加诸如 _small 之类的内容将它们保存在相同的文件夹中。现在,我正在做的是:

image_resize: {

bg: {
options: {
width: 640,
quality: 0.5,
overwrite: true
},
files: [{
expand: true,
cwd: '<%= pkg.path.images_source %>/bg',
src: ['{,*/}*.{gif,jpeg,jpg,png}'],
dest: '<%= pkg.path.images_source %>/bg/mobile'
}]
}
}

这有效地将处理后的文件保存到名为 mobile 的子文件夹中。但我真正想做的是:

dest: '<%= pkg.path.images_source %>/bg/{filename}_small.{fileextension}'

使用 Grunt 可以轻松做到这一点吗?在 SO 上找不到任何东西,老实说我不知道​​要找什么......

提前致谢!

更新:

我可以将图像输出到 tmp 文件夹中,然后使用 grunt-contrib-copy 以不同的名称将它们保存回根文件夹中,但它正在变得我觉得真的很乏味...我正在寻找一种更清洁、更快捷的方法。

最佳答案

你可以有一个重命名函数来玩弄目的地名称:

files: [{
// ...
rename: function(dest, src) {
var path = require('path'),
basename = path.basename(src),
ext = path.extname(file),
filename = basename.replace(ext, '');

return path.join(dest, filename + '_small' + ext)
}
}]

关于javascript - Grunt - 修改输出文件名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23616486/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com