# Extraer texto de un PDF: texto incrustado, escaneos y límites del OCR

La forma más fiable de extraer texto de un PDF es aprovechar el texto que ya contiene el archivo. Un informe exportado desde un procesador de texto, un PDF buscable o un escaneo que ya pasó por OCR suelen incluir objetos de texto que se pueden seleccionar y copiar. Un escaneo sin OCR no los incluye: es una imagen dentro de un PDF, así que un extractor de texto devolverá poco o nada.

La herramienta [PDF a texto](/es/pdf-a-texto/) de Lutrakit sirve para el primer caso. Se ejecuta en el navegador, procesa un PDF cada vez y descarga un `.txt` sin subir el documento. No es un motor OCR. Si la página es una imagen escaneada, primero conviene mejorarla con [Enderezar PDF](/es/enderezar-pdf/) u otra herramienta local, y después usar un OCR diseñado para reconocer caracteres.

## Primero identifica qué tipo de PDF tienes

Abre el archivo y haz tres pruebas rápidas:

1. ¿Puedes seleccionar una frase arrastrando el cursor?
2. ¿`Ctrl+F` o `Cmd+F` encuentra una palabra visible?
3. Al copiar un párrafo en un editor de texto plano, ¿las palabras son correctas?

Si las tres respuestas son sí, probablemente hay texto incrustado. Si solo puedes seleccionar un rectángulo grande sobre la imagen, probablemente es un escaneo. Si la búsqueda funciona pero el texto copiado contiene letras raras, puede ser un PDF OCRizado con una capa de texto imperfecta.

La diferencia es importante porque las API de extracción leen el contenido textual del PDF; no vuelven a mirar la página como una persona. La API `getTextContent()` de PDF.js devuelve el contenido de texto de la página y normaliza los espacios ([PDF.js API](https://mozilla.github.io/pdf.js/api/draft/module-pdfjsLib-PDFPageProxy.html), consultado el 17-08-2026). No crea palabras nuevas a partir de píxeles. La PDF Association explica algo parecido para documentos escaneados: el OCR es el paso que añade texto buscable, normalmente como una capa invisible ([PDF Association PDF/A FAQ](https://pdfa.org/pdfa-faq/), consultado el 17-08-2026).

## Usa Lutrakit cuando el texto ya existe

Flujo recomendado:

1. Abre [PDF a texto](/es/pdf-a-texto/).
2. Suelta un PDF. El límite actual es de 100 MB por archivo.
3. Deja desactivada la separación por páginas para un texto continuo, o actívala si necesitas comprobar cada página.
4. Escribe un nombre de salida, por ejemplo `contrato-extraido`.
5. Ejecuta la herramienta y descarga el `.txt`.

La opción de separar por páginas ayuda en facturas, formularios, actas y documentos donde perder una página sería grave. Añade encabezados sencillos para comparar la página del texto con la página visual del PDF.

## Ejemplo de trabajo

Usa un PDF de muestra redistribuible con tres páginas:

| Página | Contenido de muestra | Resultado esperado |
| --- | --- | --- |
| 1 | Texto digital: "Factura A-1024, total 148,60 EUR" | Las mismas palabras y cifras aparecen en el `.txt`. |
| 2 | Notas en dos columnas | El texto aparece, pero hay que revisar el orden de lectura. |
| 3 | Imagen escaneada con "Firmado el 17 de agosto de 2026" | Salida vacía o casi vacía si no hay OCR previo. |

Para una comprobación reproducible, anota navegador, sistema operativo, revisión de Lutrakit, hash del archivo, texto esperado, texto obtenido y cada diferencia.

## Por qué se puede romper el orden de lectura

Un PDF almacena instrucciones de dibujo. Una página puede parecer un párrafo normal, pero estar compuesta por fragmentos posicionados, columnas, cabeceras, pies o glifos de una fuente especial. El extractor sigue los objetos que recibe; no interpreta el diseño como lo hace una persona.

Síntomas habituales:

- Cabeceras o pies aparecen en medio del cuerpo.
- Una página en dos columnas mezcla líneas de izquierda y derecha.
- Ligaduras o fuentes personalizadas generan caracteres erróneos.
- Japonés u otros sistemas sin espacios pueden quedar separados de forma extraña.
- Un OCR anterior confunde `O` con `0`, `l` con `1` u otros caracteres parecidos.

En documentos legales, académicos, financieros o de archivo, considera el `.txt` como una ayuda de revisión, no como prueba única.

## Qué hacer con escaneos

Si el PDF solo contiene imágenes, no empieces por extraer texto. Prepara la imagen y luego usa OCR:

1. Endereza páginas inclinadas. La guía de calidad de Tesseract indica que la inclinación reduce la segmentación de líneas y recomienda girar la página hasta que las líneas queden horizontales ([Tesseract ImproveQuality](https://github.com/tesseract-ocr/tessdoc/blob/main/ImproveQuality.md), consultado el 17-08-2026).
2. Usa escaneos limpios y con resolución suficiente; la misma guía señala que 300 DPI o más puede ayudar.
3. Recorta bordes negros y conserva un margen blanco razonable.
4. Ejecuta OCR local o en una herramienta de confianza, y después extrae el texto si necesitas una copia `.txt`.

[Enderezar PDF](/es/enderezar-pdf/) puede ayudar con la inclinación, pero no añade texto OCR. Un escaneo enderezado puede mejorar el reconocimiento posterior; por sí solo no se vuelve buscable.

## Cómo verificar el resultado

Haz una auditoría pequeña pero concreta:

- Cuenta las páginas o secciones de página.
- Busca una frase o número único por cada página importante.
- Compara totales, fechas, nombres e identificadores contra el PDF.
- En páginas de dos columnas, revisa una sección completa.
- En escaneos OCRizados, comprueba visualmente cada carácter crítico.

Si el texto alimentará otro sistema, conserva siempre el PDF. El `.txt` facilita la búsqueda; el PDF sigue siendo la referencia visual.

## Límites y cuándo no usar este método

No uses PDF a texto como único paso para un mal escaneo, escritura manuscrita, tablas complejas, formularios con casillas o documentos donde el diseño sea parte de la evidencia. Para esos casos hacen falta OCR/document analysis, una aplicación PDF de escritorio o revisión manual.

Lutrakit es útil cuando la tarea es sencilla: convertir texto ya incrustado en un archivo local y revisarlo. Esa frontera de privacidad importa: los bytes del PDF permanecen en el dispositivo y el resultado se descarga desde la sesión del navegador.
