尝试在Windows上使用Gulp调整图像大小时出错EOF
我在gulpfile中调用resize:images任务时出现如下错误(见底部)…
events.js:160 throw er; // Unhandled 'error' event ^ Error: Error: write EOF at finish (C:UsersbrendanDocumentsCodeWebTheOrmWWWv3node_modulesgulp-gmindex.js:40:21) at gm.<anonymous> (C:UsersbrendanDocumentsCodeWebTheOrmWWWv3node_modulesasynclibasync.js:485:30) at emitMany (events.js:127:13) at gm.emit (events.js:201:7) at gm.<anonymous> (C:UsersbrendanDocumentsCodeWebTheOrmWWWv3node_modulesgmlibgetters.js:70:16) at Socket.cb (C:UsersbrendanDocumentsCodeWebTheOrmWWWv3node_modulesgmlibcommand.js:322:16) at Socket.g (events.js:291:16) at emitOne (events.js:96:13) at Socket.emit (events.js:188:7) at onwriteError (_stream_writable.js:340:10) Imagemagick已安装,似乎可以在命令行中运行.即magick -help提供合理的输出,您可以保存内置的测试徽标图像. 我尝试了各种其他gulp库,包括gulp-responsive-images,它给出了一个空管道错误. 我在Linux的Linux子系统下尝试了这个并且它工作正常 – 似乎这是Windows唯一的问题. 在分配gulp-image-resize并运行测试套件后,我收到以下错误… ... [14:18:20] Starting 'image_resize:interlace_and_resize_imagemagick'... events.js:160 throw er; // Unhandled 'error' event ^ Error: write EPIPE at exports._errnoException (util.js:1026:11) at Socket._writeGeneric (net.js:710:26) at Socket._write (net.js:729:8) at doWrite (_stream_writable.js:328:12) at writeOrBuffer (_stream_writable.js:314:5) at Socket.Writable.write (_stream_writable.js:241:11) at Socket.write (net.js:656:40) at gm._spawn (C:UsersbrendanDocumentsCodeOpenSourcegulp-image-resizenode_modulesgmlibcommand.js:194:18) at gm._exec (C:UsersbrendanDocumentsCodeOpenSourcegulp-image-resizenode_modulesgmlibcommand.js:167:17) at gm.proto.(anonymous function) [as size] (C:UsersbrendanDocumentsCodeOpenSourcegulp-image-resizenode_modulesgmlibgetters.js:68:12) 不幸的是,回购已经禁用了错误报告 – 有谁知道如何解决这个问题? 这是我的gulpfile.js … let gulp = require('gulp'); let imageResize = require('gulp-image-resize'); let path = require('path'); let rename = require('gulp-rename'); let debug = require('gulp-debug'); let INPUT_DIR = './NO_UPLOAD/img_src'; let OUTPUT_DIR = './NO_UPLOAD/img_tmp'; gulp.task('resize:images',function() { relFns = [ 'logo.png','image.png',].map((f) => path.join(INPUT_DIR,f)); return gulp.src(relFns,{ base: INPUT_DIR }) .pipe(debug({ title: 'resized' })) .pipe(imageResize({ width: 100 })) .pipe(rename((path) => { path.basename += '.sml' })) .pipe(gulp.dest(OUTPUT_DIR)); }); 解决方法
有很多问题……
>确保安装了Graphicsmagick(可能没有必要但安装没有任何危害) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |