Tenemos un sistema que analiza archivos PDF y extrae el texto para indexar y tal. Un problema que hemos tenido es que Illustrator establece palabras que contienen "fi" para usar la ligadura para fi (glifo único).Cómo decidir la ligadura para "FI" en Java (y otros)
Por ejemplo esta línea ...
"banco y baldosas de cerámica vitrificada ricos".
aparece como este en mi Java depurador
"banco de ete y rica Vitri \ baldosas de cerámica u001Fed."
Parece que \ u001F es el código de caracteres que los archivos Adobe PDF usan para la ligadura "fi". Obviamente, podría cambiar las ocurrencias de \ u001F por "fi", pero ¿alguien sabe de una forma robusta de manejar esto y casos similares?
ick. están usando caracteres de control unicode? !!! –
no hay muchas ligaduras: ff, fl, ffl, fi, ffi son las principales (al menos en inglés). –
Adobe tiene muchas codificaciones de conjunto de caracteres. Por lo tanto, depende de la biblioteca de PDF; por ejemplo, al escribir, uno selecciona una fuente y una codificación como CP1252 o más. En su caso, la única solución actual se encuentra aquí http://superuser.com/questions/220363/cleaning-up-pdftotext-font-issues –