Wo kann ich eine Abbildung von Identity-H codiert Zeichen in ASCII-oder Unicode-Zeichen?
Ich habe eine PDF-Datei erzeugt, die von einer Dritten Partei. Ich werde versuchen, den text aus, aber weder pdf2text
noch kopieren und einfügen der Ergebnisse in lesbaren text. Nach ein wenig Graben in der Ausgabe (von zwei) fand ich, dass jedes Zeichen auf dem Bildschirm besteht aus drei bytes. Zum Beispiel, "A" ist der bytes ef
, 81
, und 81
. Blick auf die Metadaten in der PDF, die es behauptet zu sein, codiert im Identity-H, also gehe ich davon aus was ich sehe ist ein Satz von Zeichen codiert im Identity-H. ich habe eine teilweise Zuordnung auf der Grundlage der Dokumente, die ich bereits habe, aber ich möchte, um eine vollständige Zuordnung. Zu tun, ich brauche so etwas wie eine ASCII-Tabelle für die Identitäts-H.
- Nicht eine sofortige Lösung, aber werfen Sie einen Blick auf die CID (Identity-H) Dokumente, die partners.adobe.com/public/developer/en/font/... und adobe.com/content/dam/Adobe/en/devnet/font/pdfs/...
- Wenn Sie ein PDF-Dokument mit einer schriftart, die mit identity-h, Sie sind erforderlich, um einen /ToUnicode - Karte in dem PDF für text-Extraktion. Vgl. Abschnitt 9.10.2 Zuordnung Zeichen-Codes Unicode-Werten von ISO 32000-1:2008.
- Hi, check out meine Frage zu diesem stackoverflow.com/questions/22431215/...
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ist es nicht immer möglich, zum extrahieren von text aus einer PDF-Datei, besonders wenn der /ToUnicode Karte fehlt wie bereits von der mkl.
Wenn es nicht möglich ist, zu schneiden und fügen Sie den richtigen text aus Acrobat haben, dann wird die chance sehr gering, extrahieren den text selbst. Wenn Acrobat nicht entpacken Sie es, dann ist es sehr unwahrscheinlich, dass irgendein anderes Werkzeug, extrahieren Sie den text richtig.
Wenn Sie die erstellen Sie manuell eine Kodierung Tabelle dann könnten Sie diese verwenden, um eine Anpassung der extrahierten Zeichen in Ihren richtigen Werte, aber dies wahrscheinlich nur für dieses eine Dokument.
Oft ist dies mit Absicht getan. Ich habe Dokumente gesehen, die nach dem Zufallsprinzip zuordnen Zeichen unterschiedlich für jede schriftart in Punkt. Es ist auch eine form von Verschleierung und die einzige wirkliche Möglichkeit zum extrahieren von text aus dieser PDF-Datei ist zu greifen, um OCR. Es gibt viele finanzielle Berichte, dass die Verwendung dieser Art von trick, um zu verhindern, dass die Menschen das extrahieren Ihrer Daten.
Auch, Identity-H ist nur eine 1:1-Zeichen-Zuordnung für alle Zeichen von 0x0000 bis 0xFFFF. dh. Identität ist eine Identität zuordnen.
Ihre wahre problem ist der fehlende /ToUnicode Eintrag in dieser PDF-Datei. Ich vermute, es ist auch eine eingebettete CMap in Ihrem PDF-Dokument, das erklärt, warum es sein könnte, 3 bytes pro Zeichen.