Два варианта, которые приходят на ум.
- Посмотрите на LibTIFF.www.libtiff.org
Эта библиотека используется многими другими библиотеками с открытым исходным кодом и может использоваться гораздо больше, чем просто для подсчета количества страниц из многостраничного файла TIFF Group4.Это, наверное, самый простой, быстрый и дешевый подход.Я заметил, что в программе tiff2pdf есть раздел кода, который считает страницы tiff.Вы, вероятно, можете адаптировать этот код в соответствии с вашими потребностями.Существуют версии, подходящие для Linux и Windows.
Загрузите полную спецификацию TIFF по адресу
http://partners.adobe.com/asn/developer/PDFS/TN/TIFF6.pdf и напишите свой собственный код.
В основном многостраничный тиф представляет собой целую кучу одиночных страничных тифов, объединенных вместе.Есть заголовки, которые включают смещения на следующую страницу.Чтобы получить количество страниц, вам нужно пройти заголовки и вести счет до тех пор, пока вы не дойдете до конца цепочки.Код должен быть довольно простым, если у вас есть правильные структуры заголовков и вы используете fread () и fseek () для обхода цепочки.