Любой модуль node.js будет использовать ImageMagick или GraphicsMagick внизу, поэтому вам нужны эти двоичные файлы на вашем $PATH
. Если вы используете OSX, убедитесь, что у вас есть менеджер пакетов brew, а затем запустите:
brew install imagemagick
brew install graphicsmagick
Теперь есть простой модуль node.js tiff-to-png можно установить:
$ npm install tiff-to-png
Затем создайте простой скрипт, как показано ниже:
const ConvertTiff = require('tiff-to-png');
const glob = require('glob');
// cwd option sets the current-working-directory
// that tiff-to-png runs from.
let options = {
cwd: '/path/to/rootDir/of/tiffs'
};
let location = '/path/to/output/pictures';
let converter = new ConvertTiff(options);
// for Files
let forFiles = (err, files) => {
if (err) console.log(err);
converter.convertArray(files, location);
};
// glob it.
glob('**/*.tif', options, forFiles);
Теперь, если ваши многостраничные файлы tif не разбиваются должным образом. После установки библиотек imagemagick и graphicsmagick у вас должны быть две команды: tiffcp
и tiffsplit
.
Иногда причиной сбоя, который вы видите, является неправильное сжатие. Используйте tiffcp -c none orig.tif fixed.tif
для удаления проблемного сжатия. Затем запустите tiffsplit fixed.tif prefixForSplitFile-
, и вы должны получить несколько файлов в многостраничном TIFF.
Наконец, для преобразования в форматы, отличные от PNG, и для более сложной обработки изображений с помощью Image/GraphicsMagick с использованием node.js установите gm, который может запускать вышеуказанные команды из node.js.
person
adamrights
schedule
10.01.2019