Как определить шрифт в PDF с помощью pdffonts

Выбор правильного шрифта для документов может быть сложным, если вы не разбираетесь в типографике. Если же у вас есть PDF с нужным шрифтом, pdffonts позволяет быстро извлечь имя и характеристики шрифта через командную строку.
Что такое pdffonts?
pdffonts — это утилита командной строки для извлечения информации о шрифтах из PDF-файла. Она показывает ключевые параметры каждого шрифта, включая:
- имя шрифта;
- тип шрифта (Type1, TrueType, CID и т.д.);
- статус встраивания (embedded или not embedded);
- сведения о субсетах (subset);
- кодировку (encoding);
- местоположение объекта в PDF (object ID).
pdffonts входит в библиотеку Poppler. Poppler — свободная библиотека для рендеринга и анализа PDF; чтобы получить pdffonts, устанавливают весь набор инструментов Poppler.
Быстрая терминология
- Встраивание: шрифт включён в PDF-файл и будет отображаться независимо от системных шрифтов.
- Субсет: в PDF может быть включена только часть глиффов шрифта; тогда имя обычно имеет префикс-идентификатор.
Установка на популярных дистрибутивах Linux
На Debian и Ubuntu:
sudo apt install poppler-utilsНа Arch Linux:
sudo pacman -S popplerНа Fedora, CentOS и других дистрибутивах на базе RHEL:
sudo dnf install poppler-utilsПосле установки команда pdffonts станет доступна в терминале.
Важно: pdffonts — часть набора утилит Poppler; отдельной «официальной» пакета pdffonts может не быть — устанавливайте poppler-utils или poppler.
Как анализировать шрифты в PDF
Основной синтаксис команды:
pdffonts [опции] pdffileГде pdffile — путь к PDF (абсолютный или относительный), а опции задают дополнительные режимы.
Самая простая команда, которая выводит таблицу шрифтов в PDF, — без опций:
pdffonts lorem-ipsum.pdfВы увидите таблицу с колонками: name, type, encoding, emb (встраивание), sub (субсет), uni (Unicode), object ID.
Проанализировать определённые страницы
Если нужно посмотреть шрифты только на отдельных страницах, используйте флаги -f и -l (first/last):
pdffonts -f 1 -l 3 lorem-ipsum.pdfКоманда вернёт сведения только для страниц с 1 по 3. Для первой страницы:
pdffonts -f 1 -l 1 lorem-ipsum.pdfРабота с защищёнными PDF
Если файл защищён паролем, используйте флаги -opw и -upw (owner/user password):
pdffonts -opw password lorem-ipsum.pdf
pdffonts -upw password lorem-ipsum.pdfpdffonts применит указанный пароль и попробует получить информацию о шрифтах.
Когда pdffonts даёт неполные результаты (когда он не помогает)
- PDF полностью состоит из растровых изображений (сканы) — в таком случае в PDF нет «шрифтов», и pdffonts ничего не найдёт.
- Шрифты полностью вшиты как субсеты с обфусцированными именами — имя может быть непонятным (например, ABCDEF+FontName).
- Защищённые или специализированные PDF, где метаданные шрифтов удалены или повреждены.
В этих случаях используйте альтернативы ниже.
Альтернативные подходы
- Конвертировать страницы в изображения (например, с помощью pdftoppm) и применить онлайн-анализатор шрифтов по картинке.
- Открыть PDF в профессиональном редакторе (Adobe Acrobat, Inkscape, LibreOffice Draw) и проверить свойства объектов/шрифтов.
- Для дизайнеров: попробовать оптическое распознавание шрифтов (WhatTheFont, FontSquirrel Matcherator) на скриншоте текста.
Мини‑методология: шаги для быстрого извлечения шрифта
- Установите poppler-utils.
- Выполните pdffonts filename.pdf.
- Если нужно — сузьте диапазон страниц с -f/-l.
- Если файл защищён — добавьте -opw/-upw с паролем.
- Если результат пуст или неполон — конвертируйте страницу в изображение и анализируйте визуально.
Роль‑ориентированные чек‑листы
Для дизайнера:
- Выполните pdffonts для проверки имени и встраивания.
- Если имя нечитаемо, сделайте скриншот и используйте распознавание шрифтов.
- Подберите родственные шрифты, если исходный нельзя использовать.
Для администратора/разработчика:
- Убедитесь, что poppler-utils установлен на CI или машине.
- Автоматизируйте проверку шрифтов в процессах сборки документов.
- Логируйте output pdffonts для аудита лицензий в PDF.
Для тестировщика:
- Проверяйте, что PDF содержит ожидаемые встраиваемые шрифты (emb = yes).
- Тестируйте на разных страницах с -f/-l.
Краткий разбор типичных полей вывода
- name — имя шрифта в документе (часто с префиксом субсета).
- type — тип шрифта (Type 1, TrueType, Type 0/CID).
- enc — кодировка (например, WinAnsiEncoding).
- emb — флаг встраивания (yes/no).
- sub — субсет (yes/no).
- uni — наличие сопоставления Unicode (yes/no).
- object ID — внутренний идентификатор объекта шрифта в PDF.
Что делать, если шрифт не найден
- Проверьте, не является ли файл изображением. Используйте pdffonts и pdftoppm или pdfinfo.
- Попробуйте открыть PDF в редакторе и посмотреть свойства текста.
- Используйте визуальные инструменты распознавания шрифтов по изображению.
Примечание: наличие шрифта в PDF и его корректное имя не гарантируют, что шрифт можно свободно использовать — проверьте лицензию.
Однострочный глоссарий
- pdffonts — утилита для вывода сведений о шрифтах в PDF.
- Poppler — набор утилит и библиотека для работы с PDF.
- Субсет — частичный набор глифов шрифта, включённый в PDF.
Краткое резюме
pdffonts — простой и быстрый способ узнать, какие шрифты использованы в PDF, какие из них встраиваются и какие представлены субсетами. Если PDF состоит из изображений или шрифты скрыты, используйте конвертацию в изображение и визуальные анализаторы или откройте файл в редакторе PDF.
Ключевые действия: установить poppler-utils, запустить pdffonts, при необходимости добавить параметры -f/-l или -opw/-upw.
Похожие материалы
RDP: полный гид по настройке и безопасности
Android как клавиатура и трекпад для Windows
Советы и приёмы для работы с PDF
Calibration в Lightroom Classic: как и когда использовать
Отключить Siri Suggestions на iPhone