Відповіді:
Знайдено це на веб-сторінці http://root42.blogspot.de/2012/10/counting-color-pages-in-pdf-files.html
gs -o - -sDEVICE=inkcov input.pdf | grep -v "^ 0.00000 0.00000 0.00000" | grep "^ " | wc -l
Добре працював для мене
Загальний кількість сторінок можна дізнатися за
pdfinfo input.pdf | grep Pages:
gs -o - -sDEVICE=inkcov input.pdf |tail -n +4 |sed '/^Page*/N;s/\n//'|sed -E '/Page [0-9]+ 0.00000 0.00000 0.00000 / d'
У Linux (і, мабуть, Mac / іншому Unix) наступний дуже короткий сценарій BASH, здається, робить свою справу:
#!/bin/bash
file="$1"
for page in $(identify -density 12 -format '%p ' "$file") ; do
if convert "$file[$((page-1))]" -colorspace RGB -unique-colors txt:- | sed -e 1d | egrep -q -v ': \(\s*([0-9]*),\s*\1,\s*\1' ; then
echo $page
fi
done
Назвіть сценарій як-небудь coloredpages.sh
, і зробіть його виконуваним, chmod +x coloredpages.sh
а потім запустіть, ./coloredpages.sh "pdfname.pdf"
і він повинен повернути список номерів сторінок.
Для цього потрібно встановити ImageMagick і, ймовірно, Ghostscript. І це не найшвидша річ у світі.
Вибачте, у мене немає поняття, як адаптувати це для Windows (без Cygwin чи подібного, все одно).
Маючи те саме завдання, що й ОП, і працюючи в Windows, я знайшов таке рішення, щоб швидко та красиво працювати: Збірка файлів з накопичувачем файлів SDK не є безкоштовною, але версія оцінки все ще виконує цю роботу. Завантажте поштовий файл із наведеного вище посилання, розпакуйте його та запустіть bin/C#_ParsingTest yourfile.pdf
. Ви побачите щось подібне
Page 1 is [ BW]
Page 2 is [Color]
...
Page 143 is [Color]
============
Statistics: bwPageCount=99, colorPageCount=44
Rapid PDF Count згадується в іншому відповіді тут вимагає установок (який для моєї одноразової роботи --- дисертація друку) є недоліком. Однак він також виконує роботу і надає графічний інтерфейс. Після встановлення запустіть його, перетягніть у нього файл PDF, перевірте Color Pages Counting
в меню Налаштування / Параметри, а потім натисніть Page count files in list
кнопку.
Цікаво, що результати моєї дипломної роботи відрізняються на 1 сторінку (99/44 проти 100/43). Я вважаю, це тому, що деяка цифра (я все зробив за допомогою Inkscape) насправді чорно-біла, але в метаданих описується як колір. Я не впевнений. Те, що я не знайшов у програмі швидкого переліку PDF, - це список усіх кольорових сторінок, тому я не можу сказати точне джерело цієї невідповідності.