Come posso estrarre i caratteri da un file PDF?

C'è un modo per estrarre i caratteri dai file PDF?

So che i caratteri incorporati di solito nei file PDF sono solo sottoinsiemi dei font. Comunque, c'è un modo per farlo?

Vorrei utilizzare Font Forge perché è una soluzione libera, open source e cross-platform, che può estrarre i dati dei font dai file PDF.

https://fontforge.github.io/en-US/

Utilizzare la voce di menu File> Apri.

DALLA DOCUMENTAZIONE:

FontForge può anche leggere (molti) font da un file pdf. FontForge di solito non elenca i file PDF (perché non sono realmente progettati come meccanismi per il trasporto di caratteri e la maggior parte di tali font sarà incompleta a causa di subsetting e altre ottimizzazioni), ma è sempre ansible digitare direttamente il nome di uno (oppure utilizzare Pulsante [Filtro] per definire un filter per i file pdf).

https://fontforge.github.io/filemenu.html

Qui sto promuovendo il mio precedente commento a una risposta, come per il suggerimento di HackSlash.

C'è una domanda identica su Stackoverflow che ha già una risposta ottima e altamente accettata.

Ha illustrato diversi methods, che verranno elencati solo brevemente:

  1. pdftops
  2. FontForge
  3. MuPDF
  4. uno script ghostscript
  5. pdf-parser.py

Inoltre, vorrei sottolineare che ci sono diversi servizi online gratuiti che offrono di fare proprio questo.

Commento: Non intendo "scegliere l'opzione migliore" poiché il meglio è spesso soggettivo e veramente dipendente dalla situazione specifica. La cosa più semplice sarebbe quella di utilizzare un servizio online, ma non sarebbe una valida opzione se il materiale fosse privato. FontForge sembra veramente buono soprattutto per coloro che potrebbero già usarlo per la creazione o la modifica dei caratteri. Se non è disponibile alcun ambiente desktop, allora pdftops (e le altre opzioni della row di command) sarebbe una buona scelta anche per l'automazione.

Si noti che, a seconda del programma di origine e dell'autore, possono aver scelto di "convertire i caratteri in contorni", nel qual caso i dati di carattere live non vengono incorporati. Questo è stato spesso necessario nei giorni dell'output Postscript e la pratica è ancora oggi conservata anche se non è veramente necessario.

cf. https://graphicdesign.stackexchange.com/questions/55780/is-it-necessary-to-outline-fonts-convert-text-to-curves-before-sending-them-to