svgmin输出空的svg文件?

时间:2015-10-20 23:52:11

标签: svg gruntjs minify

我刚安装了svgo,然后用grunt安装了svgmin。当我运行svgmin命令时,它只输出一个没有内容的0 kb文件,而不是缩小我的代码。任务本身已在我的gruntfile中注册,并在控制台中成功运行。

我的gruntfile有这个功能......

svgmin: { //minimize SVG files
        options: {
            plugins: [
                { removeViewBox: false },
                { removeUselessStrokeAndFill: false }
            ]
        },
        dist: {
            expand: true,
            cwd: 'main/svg',
            src: ['*.svg'],
            dest: 'main/svg',
            ext: '.success.svg'
        }
    },

我做错了什么?

1 个答案:

答案 0 :(得分:2)

我遇到了同样的问题,实际上解决方案非常简单。您只需将插件cleanupIDs设置为false

即可
options: {
        plugins: [
            { cleanupIDs: false },
            { removeViewBox: false },
            { removeUselessStrokeAndFill: false }
        ]
    },

似乎cleanupIDs插件会删除包含ID的所有组(<g>)和符号(<symbol>),而不仅仅是删除ID。一旦你把它设置为假,你就会很棒。

希望有所帮助。