Spaces:
Running
Running
Commit History
-
pdf.js 4.x vendorizado y pruebas del extractor de PDF
Jose Salazar +1: Claude Opus 5La 3.x leía mal los CMap `ToUnicode` con destinos de un byte —fuera de especificación, pero los emiten informes de laboratorio reales generados con Ghostscript— y devolvía cada carácter desplazado 8 bits ('H' → U+4800), con lo que la importación fallaba entera con «No se encontraron datos reconocibles». El desplazamiento NO se puede reparar a posteriori: el '0' desplazado cae en U+3000 y el extractor lo normaliza a espacio, así que una ALT de 260 U/L se leería como 26. Por eso `textoIlegible()` detecta el caso y aborta en vez de importar números equivocados. pdf.js 4+ se distribuye como módulo ES y ya no publica `window.pdfjsLib`, de ahí el paso de .js a .mjs y la carga dinámica. La versión es un invariante: los ficheros de `assets/lib/pdfjs/` se copian de la devDependency con `npm run vendor-pdfjs` para que navegador y pruebas usen la misma. `frontend/tests/pdf-parser.test.ts` fija todo esto con un PDF construido con esa anomalía, y cubre la ventana de aceptación de valores: sólo en…c0b119e