Transmitir el archivo cargado con Express.js a través de gm para eliminar la escritura doble

Estoy usandoExpress.js y tengo una ruta para cargar imágenes que luego necesito cambiar de tamaño. Actualmente solo dejoExpress escribir el archivo en el disco (que creo que utilizanode-formidable debajo de las cubiertas) y luego cambiar el tamaño usandogm (http://aheckmann.github.com/gm/) que escribe una segunda versión en el disco.

gm(path)
  .resize(540,404)
  .write(dest, function (err) { ... });

He leído que puedes conseguir unanode-formidable secuencia de archivos antes de que lo escriba en el disco, y desdegm Puedo aceptar una secuencia en lugar de solo una ruta, debería poder pasar este derecho eliminando la doble escritura en el disco.

Creo que necesito anularform.onPart pero no estoy seguro de dónde (debería hacerse comoExpress middleware?) y no estoy seguro de cómo obtener una retención deform o qué hacer exactamente con elpart. Este es el código del esqueleto que he visto en algunos lugares:

form.onPart = function(part) {
    if (!part.filename) { form.handlePart(part); return; }

    part.on('data', function(buffer) {

    });
    part.on('end', function() {

    }
}

¿Puede alguien ayudarme a juntar estas dos piezas? ¡Gracias!

Respuestas a la pregunta(1)

Su respuesta a la pregunta