
Мне нужно проверить .pdf
документ, состоящий из большого количества страниц. Я хотел бы иметь возможность узнать, какой тип шрифта используется в каком месте, чтобы проверить согласованность во всем документе.
решение1
Я рекомендую начать с этой pdffonts
утилиты. (Позже вы можете перейти к более продвинутому инструменту, например tet
,pdflib.comесли первого шага вам недостаточно).
pdffonts
— это командная строка, доступная для Windows, Linux и Mac OS X. Она входит в состав XPDF (или в качестве альтернативной реализации из ответвления XPDF под названием «poppler»). Загрузите утилиты XPDF для Windowsздесь(в Linux они должны быть предустановлены в большинстве систем).
Попробуйте это, чтобы ознакомиться с инструментом (предполагаю, что вы используете Windows):
pdffonts.exe -h
Затем запустите его на вашем PDF-файле, чтобы получить первое представление обо всех используемых шрифтах:
pdffonts.exe d:\path\to\your.pdf
Теперь посмотрим, какие шрифты используются на страницах 11–13:
pdffonts.exe -f 11 -l 13 d:\path\to\your.pdf
Вам нужны шрифты на странице 15?
pdffonts.exe -f 15 -l 15 d:\path\to\your.pdf
Или вам нужен список шрифтов, используемых постранично? Хорошо, тогда вам нужно знать, сколько страниц в вашем PDF. Предположим, что это 1234 страницы:
for /l %i in (1,1,1234) do (echo. &^
echo. Page %i:&^
echo. ============&^
pdffonts -f %i -l %i d:\path\to\your.pdf&^
echo.)
В Linux измените эту команду на:
for i in $(seq 1 1234); do
echo " Page ${i}:"
echo " ============"
pdffonts -f ${i} -l ${i} /path/to/your.pdf
echo
done
Теперь вы должны увидеть примерно такой вывод:
Page 1:
============
name type emb sub uni object ID
------------------------------------ ----------------- --- --- --- ---------
DDPEFM+Helvetica Type 1C yes yes no 124352 0
DDPEIM+Helvetica-Bold Type 1C yes yes no 124354 0
Page 2:
============
name type emb sub uni object ID
------------------------------------ ----------------- --- --- --- ---------
DDPEIM+Helvetica-Bold Type 1C yes yes no 124354 0
DDPEFM+Helvetica Type 1C yes yes no 124352 0
Arial-BoldMT TrueType no no no 3543 0
ArialMT TrueType no no no 3541 0
Page 3:
============
name type emb sub uni object ID
------------------------------------ ----------------- --- --- --- ---------
DDPEFM+Helvetica Type 1C yes yes no 124352 0
DDPEIM+Helvetica-Bold Type 1C yes yes no 124354 0
Arial-BoldMT TrueType no no no 3543 0
ArialMT TrueType no no no 3541 0
Точное значение различных столбцов см. man pdffonts
в разделе Linux или прочитайте текстовый файл pdfinfo.txt
в Windows.
решение2
Насколько мне известно, список шрифтов, используемых в PDF-файле, можно увидеть в диалоговом окне свойств документа (Файл>Свойства или ctrl/cmd+D) на вкладке «Шрифты».
Но в списке не указано, на какой странице используется конкретный шрифт, по крайней мере, в Adobe Reader. Может быть, есть такая опция в Acrobat Pro или в каком-то другом pdf-ридере?