Mientras extraer texto de archivos PDF PDFBox algunos retornos galimatías. Esto se debe a una asociación Unicode falta o está dañado. Veo siguientes advertencias en la consola. Quiero ser capaz de detectar esto para poder marcar estos archivos PDF como corruptos.
Estoy buscando una solución que es mejor que los registros de análisis sintáctico.
¡Gracias por tu ayuda!
Muestra Console Logs:
WARNING: No Unicode mapping for CID+32 (32) in font F6
WARNING: Failed to find a character mapping for 32 in TimesNewRoman,Bold
A continuación posterior se cuenta también habla sobre el mismo tema, pero no habla de la manera de ser capaz de detectar esta en el lado de código y manejar el mismo: Problema con la lectura de algunos caracteres Unicode de un PDF utilizando PDFBox
Una cuarta posibilidad (al lado de los tres dada en Aaron Digulla respuesta) es reemplazar showGlyph()
al extender la PDFTextStripper
clase:
protected void showGlyph(Matrix textRenderingMatrix, PDFont font, int code, String unicode, Vector displacement) throws IOException
{
super.showGlyph(textRenderingMatrix, font, code, unicode, displacement);
if (unicode == null || unicode.isEmpty())
{
// do stuff
}
}