Pertanyaan Dapatkan jumlah tiffs dalam multi-tiff dengan baris perintah ImageMagick?


Apakah ada cara untuk mendapatkan jumlah tiffs dalam multi-tiff dengan utilitas baris perintah di ImageMagick?

Yang ingin saya lakukan adalah mengekstrak (membagi) multi-tiff ke dalam file tunggal. Namun jika tiff hanya berisi satu tiff (bukan multi-tiff), saya tidak ingin melakukan apa pun ... Juga jika saya menggunakan "% d" -opsi untuk memberi nama file output, saya mendapatkan "% d "di nama file jika hanya satu.

... atau apakah ada cara lain untuk menggunakan ImageMagick untuk menghindari nama file yang aneh saat mengkonversi?


4
2018-04-13 07:53


asal




Jawaban:


Anda dapat mengembalikan jumlah halaman dengan menggunakan tiff identify -format "%p" multipage.tif.


3
2018-04-13 15:39



Menarik! Mencobanya dan kembali: 12345678910111213141516171819202122 jika tiff saya menyimpan 22 gambar. Tidak cukup apa yang saya harapkan tetapi akan menyelidiki lebih lanjut ... - Anders
Hmmm ..... Saya tidak memiliki tiff berganda untuk mencobanya. Versi IM apa yang Anda gunakan? Pada OS apa? - DaveParillo
Saya telah mencoba versi IM 32-bit 6.6.1-2 Q8 dan Q16 pada Windows XP 32-bit dan Windows 7 64-bit. Saya juga mencoba 64-bit IM 6.6.1-2 pada Windows 7 64-bit. Semua menghasilkan output yang sama dengan perintah yang Anda sarankan. - Anders
Saya menemukan dokumentasi untuk string dalam opsi format (tersedia di imagemagick.org). % p menampilkan halaman dan% n menampilkan jumlah adegan, itulah yang saya cari. Perintah yang akan saya gunakan adalah: identifikasikan -format "% n" multipage.tif. - Anders


Lebih pendek dari yang lain:

identify multipage.tif | wc -l

5
2018-02-16 18:33



Bekerja untuk saya ... bahkan ketika tidak ada satupun -format opsi menghasilkan keluaran apa pun. Perlu dicatat bahwa alasan ini bekerja bahkan ketika identify memuntahkan banyak pesan kesalahan (tanpa  |wc -l), adalah karena kesalahan ditulis untuk stderr, dan wc hanya membaca stdout - Lambart
@Lambart: wc dibaca stdintidak stdout. Itu adalah pipa yang menghubungkan stdout dari yang semula menjadi stdin yang terakhir. Ada pipa lain yang tersedia juga. - Robert Siemer
@RobertSiemer diklarifikasi dengan jelas, terima kasih - Lambart


Anda dapat menggunakan yang berikut ini untuk menghitung jumlah halaman dalam file TIFF:

tiffinfo output_file_name.tif | grep "Page Number" | grep -c "P"

1
2017-07-14 07:43



tiffinfo adalah yang baru bagiku. Utilitas yang menarik, tetapi tidak dapat mendeteksi gambar kedua di tiff yang saya kerjakan ... juga, untuk TIFF 80MB, itu menghasilkan 345MB output. - Lambart


identify multipage.tif | wc -l

(-format "% p" atau% n menghasilkan hasil palsu untuk saya)


0
2018-03-30 19:14





Dikombinasikan dari jawaban yang disediakan (menggunakan format dan wc untuk menghitung):

identify -format "%p " multipage.tif | wc -w

Dan hanya untuk menyebutkan ... itu adalah nomor halaman yang kami dapatkan (1 untuk 1 halaman, 1 2 untuk 2 halaman, 1 2 3 untuk 3 halaman dan 1 2 3 ... 19 20 21 22 untuk 22 halaman)


0
2018-05-07 06:42