Domanda

Sto usando lo strumento OpenSource PDFTOTEXT per convertire il PDF in file di testo. Come posso salvare i file di testo nel formato UTF-8 in modo da poter conservare tutti i caratteri di accento nei file di testo. Sto usando il comando seguente per convertire che estrae il contenuto in file di testo ma non è in grado di vedere caratteri accentati.

pdftotext -enc utf -8 book1.pdf book1.txt

Per favore aiutami a risolvere questo problema.

Grazie in anticipo,

È stato utile?

Soluzione

È possibile ottenere un elenco di codifiche disponibili utilizzando il comando:

pdftotext -listenc

e scegli quello giusto usando l'argomento -ence. Il mio qui sembra fare UTF-8 per impostazione predefinita. cioè il tuo "UTF-8" è superfluo

pdftotext -enc UTF-8 your.pdf

Potresti voler controllare la tua locale (LC_ALL, Lang, ...).

MODIFICARE:Ho scaricato il seguente PDF:http://www.i18nguy.com/unicode/unicodeexample.pdf

e lo ha convertito su un PC Windows 7 (tedesco) e XPDF 3.02PL5 usando il comando:

pdftotext.exe -enc UTF-8 unicodeexample.pdf

Il file di testo è sicuramente codificato UTF-8, poiché tutti i caratteri vengono visualizzati correttamente. Per cosa stai usando il file di testo? Se lo stai visualizzando tramite un'applicazione Web, la codifica dei contenuti potrebbe essere semplicemente sbagliata, mentre il file di testo è stato convertito come volevi.

Controllo doppio usando un browser (forzare la codifica in Firefox su ISO-8859-1 e UTF-8) o usando un editor esadecimale.

Altri suggerimenti

Le cose stanno diventando un po 'disordinate, quindi sto aggiungendo un'altra risposta.

Ho smontato il PDF e la mia ipotesi migliore sarebbe un "problema" con il carattere usato:

  • Apri il file PDF in Acrobar Reader
  • Seleziona tutto il testo nella pagina
  • Copialo e incollalo in un editor di testo consapevole di Unicode (non c'è OCR "nascosto", quindi stai copiando dati effettivi)

Vedrai che i codepoint con cui finisci non sono quelli che stai vedendo nel lettore PDF. Qualunque sia il carattere, può avere una mappatura diversa da quella definita nello standard Unicode. Pertanto, il tuo contenuto è "WRONT" e non c'è molto che puoi fare al riguardo.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top