Comment savoir quelles polices sont référencées et lesquelles sont intégrées dans un document PDF


105

Nous avons un petit problème avec les polices dans les documents PDF. Afin de mettre le doigt sur le problème que je voudrais inspecter, quelles polices sont réellement intégrées dans le document pdf et lesquelles sont uniquement référencées. Existe-t-il un moyen facile (et peu coûteux comme gratuit) de le faire?

Réponses:


144

pdffontsoutil de ligne de commande à l'origine de Xpdf , maintenant partie de Poppler .

Cet outil est disponible dans la plupart des distributions Linux dans le cadre du poppler-utilspackage.

Exemple d'utilisation et de sortie:

$ 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

pour éviter linkrot, veuillez inclure un exemple et / ou un document.
Jake Berger

Il semble avoir été installé par défaut sur mon installation Lubuntu 14.10.
DaAwesomeP

8
Pour les utilisateurs de mac, brew install popplerpour obtenir facilement la pdffontscommande
Edward Newell

Dans la visionneuse de documents evince, allez dans Fichier -> Propriétés -> Onglet Polices
Lnux

86

Beaucoup plus simple si vous voulez juste connaître les noms de polices: exécutez-le depuis un terminal

strings yourPDFfilepath.pdf | grep FontName

12
Windows: findstr FontName yourPDFfilepath.pdf
Craigo

11
Ça ne marche pas pour moi. (Mac avec PDF généré par latex.) pdffontsMontre deux polices intégrées; cela n'en montre aucun. Évidemment, cette méthode fonctionne parfois, mais n'est pas fiable.
Mike

essayez avec f minuscule sur fontName
Ken Aspeslagh

@texnic Essayez ceci. Cliquez avec le bouton droit et ouvrez le fichier dans un éditeur de texte (par exemple le Bloc-notes) et recherchez FontName.
Kevin Lee

50

J'ai finalement obtenu un fichier d'exemple qui semble contenir des polices intégrées.

En utilisant Adobe Reader normal (ou Foxit si vous préférez). Sélectionnez Fichier-> Propriétés dans la boîte de dialogue résultante, choisissez l'onglet Police. Vous verrez une liste de polices. Ceux qui sont incorporés indiqueront ce fait entre () derrière le nom de la police.


5

CAM :: PDF a un rapporteur de polices, disponible sous forme d'utilitaire de ligne de commande ou via un appel de bibliothèque. Si vous exécutez "listfont.pl file.pdf", vous obtenez une sortie comme ceci:

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


1

en utilisant le logiciel gratuit iText (ou iTextSharp si vous êtes sur .NET), vous pouvez écrire un utilitaire qui extraira pour vous ces informations en utilisant la méthode BaseFont.GetDocumentFonts.

Lisez ce lien pour le code

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.