javascript - such - node js error handling
Nodo js Error: generar ENOENT (2)
Estoy tratando de convertir SVG a PNG con el nodo js. Mi código está aquí:
http.createServer(function (req, res) {
res.writeHead(200, {''Content-Type'': ''image/png''});
var convert = child_proc.spawn("convert", ["svg:", "png:-"]),
values = (url.parse(req.url, true).query[''values''] || ".5,.5")
.split(",")
.map(function(v){return parseFloat(v)});
convert.stdout.on(''data'', function (data) {
res.write(data);
});
convert.on(''exit'', function(code) {
res.end();
});
jsdom.env({features:{QuerySelector:true}, html:htmlStub, scripts:scripts, done:function(errors, window) {
var svgsrc = window.insertPie("#pie", w, h, values).innerHTML;
//jsdom''s domToHTML will lowercase element names
svgsrc = svgsrc.replace(/radialgradient/g,''radialGradient'');
convert.stdin.write(svgsrc);
convert.stdin.end();
}});
}).listen(8888);
Mientras ejecutaba obtuve este error (en MAC)
events.js:72
throw er; // Unhandled ''error'' event
^
Error: spawn ENOENT
at errnoException (child_process.js:980:11)
at Process.ChildProcess._handle.onexit (child_process.js:771:34)
He especificado la ruta para nodejs. Pero no sé por qué falla. Alguna idea sobre este problema?
Es probable que falle porque no puede encontrar la aplicación de convert
. ¿Existe el camino para convert
en su entorno PATH? ¿Puedes ejecutar convert
desde tu terminal?
Tenía este mismo problema ejecutándose desde Linux. Hice el npm install unoconv
y pensé que eso se encargaría de instalar la aplicación de conversión, pero solo cuando la instalé podría ejecutarla en Node.js sudo apt-get install unoconv