Возможно это оффтоп, но может у кого есть какие идеи.
Цель: автоматизировать оценку pdf файла на заполненность изображениями. Например файл из 100 страниц могут содержать 80 страниц просто текста, но другие 20 могут быть забиты по всей странице картинками. Это все для оценки стоимости печати.
UPD. С помощю команды
pdftoppm 1.pdf 1 -jpeg -f 4 -r 300 -singlefile
UPD2 Командой
convert 1-0.jpg -fill black +opaque white -format "%[fx:mean*100]" info:
UPD2 - РЕШЕНИЕ ВОПРОСА. На мой взгляд, самым лучшим вариантом оценки заполненности страницы это не указывать профиль, оно само по умолчанию берет CMYK, не пользоваться -sPageList=1,2 ибо не работает этот параметр, по крайней мере у меня, вместо него использовать два параметра: -dFirstPage=9 -dLastPage=9. В итоге имеем вывд польностью заполненой черным страницы:
$ gs -q -dNOPAUSE -dBATCH -dFirstPage=9 -dLastPage=9 -sDEVICE=inkcov -o - 2.pdf
1.00000 1.00000 1.00000 1.00000 CMYK OK
UPD3 - Предыдущий вариант не вполне удачный, легкое заполнение может посчитать как полное. Решением является другой -sDEVICE, но обновленного GhostScript:
gs -q -dNOPAUSE -dBATCH -dFirstPage=1 -dLastPage=1 -sDEVICE=ink_cov -o - 2.pdf
Так же хорошим вариантом есть оценка заливки сбив все в серые цвета:
convert -density 25 2.pdf -colorspace rgb -alpha remove -format %[fx:100-100*mean.gray]%% info: > "/tmp/2"