Как заставить Node.js работать с уменьшением цвета GraphicsMagick?

Я нахожусь в среде cloud9 на c9.io, и я успешно установил GraphicsMagick и модуль gm node.js. Мне удалось вызвать ряд методов, но некоторые из них мне не удалось. Одна конкретная проблема, с которой у меня возникла проблема, - это метод уменьшения цвета (цвета).

Кто-нибудь успешно смог вызвать цвета и заставить его уменьшить цвета в исходном изображении? В документации указано, что используется: gm("img.png").colors(int), но я не могу заставить его работать, и мне было интересно, успешно ли кто-нибудь использовал это.

Я предоставил сокращенный блок кода, чтобы дать представление о том, как я его использую, в надежде, что кто-нибудь увидит, что я, возможно, делаю неправильно. В обработчике событий данных у меня все еще есть гораздо больше цветов, отображаемых в переданном параметре «chunk», чем мое уменьшенное количество 8 в этом случае.

Спасибо!

    var img = gm(sourceFilename),
    tmpFilename = temp.path({ suffix: '.miff' });

    return img.noProfile().bitdepth(8).colors(8).scale(Math.ceil(wh.height / ratio),   MAX_W).write('histogram:' + tmpFilename, function (err) {
    var histogram, rs;
    histogram = '';
    rs = fs.createReadStream(tmpFilename, {encoding: 'utf8'});

    rs.addListener('data', function (chunk) {
    console.log("Data: ", chunk);
    });
    });

person xtr33me    schedule 21.05.2013    source источник


Ответы (1)


Хорошо, проблема, кажется, с «масштабом». В настоящее время кажется, что масштабирование и изменение размера (я проверял) работают неправильно. Когда я удалил масштаб из линии, как показано ниже, теперь я получаю данные гистограммы с уменьшенным цветом, которые я ожидал.

return img.noProfile().bitdepth(8).colors(8).write('histogram:' + tmpFilename, функция (ошибка)

person xtr33me    schedule 21.05.2013