Un cliente reportó que todos los importes de su extracto bancario en PDF se extraían con signo negativo. Al analizar el archivo con la herramienta PDFSnake, el autor descubrió que los valores positivos, como $1.527,57, incluían un guion final invisible: el carácter estaba presente en el flujo de texto del PDF, pero se dibujaba en gris claro con el mismo tono que el fondo, de modo que no se veía al imprimir o visualizar.
El artículo explica, paso a paso, los comandos PDF (BT, ET, Tf, Td, Tj, g, G) que intervienen al renderizar una cadena como «$110.00» o «$1.527.57-», y muestra la diferencia clave entre ambos casos: en el valor positivo, el operador g fija un nivel de gris de 0,878 exactamente igual al color de fondo, haciendo el signo menos transparente.
El origen estaría en la maquetación: el banco usa signos menos a la derecha para alinear los números, y alinea a la derecha el dígito, no el signo. Para ello reserva siempre un hueco al guion, y en los importes positivos lo rellena con un carácter del mismo color que el fondo. El resultado es un PDF visualmente correcto, pero casi imposible de extraer mediante lectura directa del texto. El texto propone dos soluciones: aplicar OCR sobre el PDF convertido a imágenes (más lento y con margen de error) o descartar en el extractor todo texto cuyo color no sea negro, siempre que se guarde el color de cada fragmento durante el parseo.
