0

我正在尝试设置一个 Gulp 任务,通过使用和插件将.ttf字体转换为 webfont 格式。分别将源字体转换为和。gulp-ttf2woffgulp-ttf2woff2.woff.woff2

我提出了这两个独立的功能,每个插件一个:

function fontsW(done) {
    src(fontsSrc)
        .pipe(ttf2woff())
        .pipe(dest(fontsDist))
    done();
};

function fontsW2(done) {
    src(fontsSrc)
        .pipe(ttf2woff2())
        .pipe(dest(fontsDist))
    done();
};

是否可以将它们浓缩在一个函数中,让我们称它为同时function fonts(done) {}处理两个插件?

基本上,我想要这样的东西

function fontsW2(done) {
    src(fontsSrc)
        .pipe(ttf2woff())
        .pipe(ttf2woff2())
        .pipe(dest(fontsDist))
    done();
};

两者都ttf2woff()接收ttf2woff2()输出src并将自己处理的文件提供给dest.

4

2 回答 2

1

你可以这样做:

function fontsW(done) {
    src(fontsSrc)
        .pipe(ttf2woff())
        .pipe(dest(fontsDist))

     src(fontsSrc)
        .pipe(ttf2woff2())
        .pipe(dest(fontsDist))
    done();
};
于 2019-03-18T08:22:20.217 回答
0

您可以定义一个并行调用这两个函数的任务:

gulp.task('fonts', gulp.parallel(ttf2woff, ttf2woff2));

您可以在其他任务中使用此任务(例如从您的default任务中调用它),也可以直接从终端调用它:

gulp fonts
于 2019-03-16T22:24:10.593 回答