So finden Sie heraus, auf welche Schriftarten verwiesen und welche in ein PDF-Dokument eingebettet sind


105

Wir haben ein kleines Problem mit Schriftarten in PDF-Dokumenten. Um den Finger auf das Problem zu legen, möchte ich untersuchen, welche Schriftarten tatsächlich in das PDF-Dokument eingebettet sind und auf welche nur verwiesen wird. Gibt es eine einfache (und billige wie kostenlose) Möglichkeit, dies zu tun?

Antworten:


144

pdffontsKommandozeilen-Tool ursprünglich aus Xpdf , jetzt Teil von Poppler .

Dieses Tool ist in den meisten Linux-Distributionen als Teil des poppler-utilsPakets verfügbar .

Beispiel für Verwendung und Ausgabe:

$ 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

Um Linkrot zu vermeiden, fügen Sie bitte ein Beispiel und / oder ein Dokument bei.
Jake Berger

Es scheint standardmäßig auf meiner Lubuntu 14.10-Installation installiert worden zu sein.
DaAwesomeP

8
Für Mac-Benutzer, brew install popplerum den pdffontsBefehl einfach zu erhalten
Edward Newell

Gehen Sie in evince document viewer zu Datei -> Eigenschaften -> Registerkarte Schriftarten
Lnux

86

Viel einfacher, wenn Sie nur die Schriftnamen herausfinden möchten: Führen Sie dies von einem Terminal aus

strings yourPDFfilepath.pdf | grep FontName

12
Windows: findstr FontName yourPDFfilepath.pdf
Craigo

11
Funktioniert bei mir nicht (Mac mit PDF aus Latex) pdffontszeigt zwei eingebettete Schriftarten; das zeigt keine. Offensichtlich funktioniert diese Methode einige Male, ist aber nicht zuverlässig.
Mike

versuchen Sie es mit Kleinbuchstaben f auf fontName
Ken Aspeslagh

@texnic Versuchen Sie dies. Klicken Sie mit der rechten Maustaste und öffnen Sie die Datei in einem Texteditor (z. B. Editor) und suchen Sie nach FontName.
Kevin Lee

50

Ich habe endlich eine Beispieldatei bekommen, in die tatsächlich Schriftarten eingebettet zu sein scheinen.

Verwenden Sie den normalen Adobe Reader (oder Foxit, wenn Sie dies bevorzugen). Wählen Sie im daraufhin angezeigten Dialogfeld Datei-> Eigenschaften und wählen Sie die Registerkarte Schriftart. Sie sehen eine Liste der Schriftarten. Diejenigen, die eingebettet sind, geben diese Tatsache in () hinter dem Schriftnamen an.


5

CAM :: PDF verfügt über einen Schriftreporter, der als Befehlszeilenprogramm oder über einen Bibliotheksaufruf verfügbar ist. Wenn Sie "listfont.pl file.pdf" ausführen, erhalten Sie folgende Ausgabe:

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

3

Sie können Schriftarten mit dem Online Font Converter aus PDF extrahieren


Schamloser Stecker, aber dies ist die einzige plattformübergreifende Methode, die Beweise zurückgibt. Plus, yeez, coole Seite.
Commonpike

1

Mit dem kostenlosen iText (oder iTextSharp, wenn Sie sich in .NET befinden) können Sie ein Dienstprogramm schreiben, das diese Informationen mithilfe der BaseFont.GetDocumentFonts-Methode für Sie extrahiert.

Lesen Sie diesen Link für den Code

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.