modul node.js yang mengonversi gambar tiff multihalaman

Apakah ada alat yang tersedia untuk mengonversi file tiff multi halaman ke JPG, PNG..dll?

Saya menggunakan sharp, modul dari node.js untuk mengonversi gambar tiff ke format yang saya inginkan. Tetapi tampaknya itu tidak dapat mengonversi file tiff tunggal dengan beberapa halaman terkompresi (itu hanya mengonversi halaman pertama)


person weily huang    schedule 10.01.2019    source sumber
comment
tiff multihalaman   -  person lloyd    schedule 10.01.2019


Jawaban (2)


Modul node.js apa pun akan menggunakan ImageMagick atau GraphicsMagick di bawahnya, jadi Anda memerlukan file biner ini di $PATH. Jika Anda menggunakan OSX, pastikan Anda memiliki brew package manager, lalu jalankan:

brew install imagemagick
brew install graphicsmagick

Sekarang, ada modul node.js sederhana tiff-to-png Anda dapat memasang:

$ npm install tiff-to-png

Kemudian buatlah script sederhana seperti dibawah ini:

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);

Sekarang, jika file tif multi halaman Anda tidak dipecah dengan benar. Ada dua perintah yang harus Anda miliki setelah menginstal perpustakaan imagemagick dan grafismagick: tiffcp dan tiffsplit.

Terkadang kompresi yang tidak tepat menyebabkan kegagalan yang Anda lihat. Gunakan tiffcp -c none orig.tif fixed.tif untuk menghapus kompresi yang merepotkan. Kemudian jalankan tiffsplit fixed.tif prefixForSplitFile- dan Anda akan mendapatkan banyak file dalam tiff multi halaman.

Terakhir, untuk mengonversi ke format di luar PNG, dan untuk pemrosesan gambar lebih lanjut dengan Image/GraphicsMagick menggunakan node.js, instal gm Modul, yang dapat menjalankan semua perintah di atas dari node.js.

person adamrights    schedule 10.01.2019