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?

Jens Schauder
quelle

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
vartec
quelle
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
michelem
quelle
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.

Jens Schauder
quelle
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
Chris Dolan
quelle
3

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

Stefan
quelle
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

Rad
quelle