web-dev-qa-db-fra.com

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

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 au document pdf et lesquelles sont uniquement référencées Y a-t-il un moyen facile (et pas cher, comme en libre) de le faire?

97
Jens Schauder

J'ai finalement obtenu un exemple de fichier qui semble contenir des polices.

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

48
Jens Schauder

pdffonts Outil de ligne de commande originaire de Xpdf , qui fait maintenant partie de Poppler .

Cet outil est disponible dans la plupart des distributions Linux dans le cadre de poppler-utils paquet.

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
137
vartec

Beaucoup plus simple si vous voulez juste connaître le nom des polices: lancez-le depuis un terminal

strings yourPDFfilepath.pdf | grep FontName
85
michelem

CAM :: PDF dispose d'un rapporteur de polices, disponible en tant qu'utilitaire de ligne de commande ou via un appel à la bibliothèque. Si vous exécutez "filefont.pl fichier.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
5
Chris Dolan

Vous pouvez extraire les polices de PDF en utilisant convertisseur de polices en ligne

4
Stefan

en utilisant iText gratuit (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.

Lire ce lien pour le code

1
Rad