Как узнать, на какие шрифты ссылаются и которые встроены в PDF-документ


У нас есть небольшая проблема со шрифтами в PDF-документы. Чтобы указать на проблему, я хотел бы проверить, какие шрифты фактически встроены в документ pdf и на которые только ссылаются. Есть ли простой (и дешевый, как в бесплатном) способ сделать это?

6 95

6 ответов:

pdffonts инструмент командной строки первоначально из Xpdf, теперь Poppler.

этот инструмент доступен в большинстве дистрибутивов Linux в рамках poppler-utils пакета.

пример использования и вывода:

$ pdffonts some.pdf 

name                                 type              emb sub uni object ID
------------------------------------ ----------------- --- --- --- ---------
BAAAAA+Arial-Black                   TrueType          yes yes yes     53  0
CAAAAA+Tahoma                        TrueType          yes yes yes     28  0
DAAAAA+Wingdings-Regular             TrueType          yes yes yes     43  0
EAAAAA+Webdings                      TrueType          yes yes yes     38  0
FAAAAA+Arial-BoldMT                  TrueType          yes yes yes     33  0
GAAAAA+Tahoma-Bold                   TrueType          yes yes yes     23  0
HAAAAA+OpenSymbol                    TrueType          yes yes yes     48  0

гораздо проще, если вы просто хотите узнать имена шрифтов: запустить из терминала

strings yourPDFfilepath.pdf | grep FontName

Я, наконец, получил пример файла, который на самом деле кажется, внедренные шрифты.

с помощью обычного Adobe Reader (или Foxit, если вы предпочитаете). Выберите Файл - >свойства в полученном диалоговом окне выберите вкладку шрифт. Вы увидите список шрифтов. Те, которые встроены, будут указывать этот факт В ( ) за именем шрифта.

CAM:: PDF имеет font reporter, доступный как утилита командной строки или через вызов библиотеки. Если ты побежишь "listfont.pl файл.pdf " вы получаете такой вывод:

Page 1:
  Name: F1.0
    Type: TrueType
    BaseFont: NZUXSR+Impact
    Encoding: MacRomanEncoding
    Widths: yes
      Characters: 0-255
    Embedded: yes
  Name: F2.0
    Type: TrueType
    BaseFont: XSFKRA+ArialMT
    Encoding: MacRomanEncoding
    Widths: yes
      Characters: 0-255
    Embedded: yes

вы можете извлечь шрифт(ы) из PDF с помощью Онлайн Конвертер Шрифтов

используя бесплатный iText (или iTextSharp, если вы находитесь на .NET) вы можете написать утилиту, которая будет извлекать для вас эту информацию с помощью BaseFont.Метод GetDocumentFonts.

читать этой ссылке код