# Extraer Texto de PDF o Imagen

Saca el texto de un PDF escaneado o de una foto, con reconocimiento en español

- Página: https://herramient.as/extraer-texto-pdf-imagen
- Categoría: Texto
- Dónde se ejecuta: en el navegador, los datos no salen del dispositivo

Es una herramienta interactiva: se usa desde el navegador en https://herramient.as/extraer-texto-pdf-imagen.

## Uso por API

También se puede usar por API REST, con una clave en la cabecera `Authorization: Bearer htas_...`. Referencia completa: https://herramient.as/api-docs.md

### `POST /api/v1/tools/documents/extract_text`

Extrae la capa de texto de un PDF

Lee el texto que el PDF ya lleva dentro, que es el caso de casi cualquier factura, nómina o extracto generado por ordenador: es inmediato y exacto. **No hace OCR.** Un PDF escaneado son imágenes sin capa de texto y la respuesta lo indica con scanned=true; para esos, la página de la herramienta reconoce el texto en el navegador. El reconocimiento en servidor llegará con su propia celda, porque son minutos de CPU por documento y pide un trabajo asíncrono, no una llamada sincrónica. El fichero no se almacena.

Consume 10 unidades de cuota.

**Parámetros**

| Nombre | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| `file` | file | sí | El PDF, como multipart/form-data. Máximo 25 MB |
| `max_pages` | integer | no | Cuántas páginas leer, de 1 a 200. Por defecto 200 (Ejemplo: `50`) |

**Respuesta**

| Nombre | Tipo | Descripción |
|---|---|---|
| `text` | string | El texto extraído, con las páginas separadas por una línea en blanco |
| `pages` | integer | Páginas que tiene el documento |
| `pages_read` | integer | Páginas leídas de verdad, que difiere de pages si se aplicó max_pages |
| `truncated` | boolean | Si quedaron páginas sin leer por el límite |
| `scanned` | boolean | True si no hay ni una letra: el PDF es un escaneo y necesita OCR |
| `characters` | integer | Caracteres del texto extraído |
| `words` | integer | Palabras del texto extraído |

**Errores**

- `400`: Falta el fichero, no es un fichero, supera 25 MB, o max_pages fuera de rango
- `422`: El PDF está dañado, o protegido con contraseña, o no es un PDF
- `503`: El servicio de procesamiento no está disponible. Reintenta según Retry-After

```bash
curl -X POST https://herramient.as/api/v1/tools/documents/extract_text \
  -H "Authorization: Bearer htas_tu_clave_api" \
  -H "Content-Type: application/json" \
  -d '{"max_pages":50}'
```

## Preguntas frecuentes

### ¿Se sube mi PDF a algún servidor?

No, y en esta herramienta importa especialmente, porque lo que se sube aquí son facturas, nóminas y contratos. El reconocimiento lo hace tu propio navegador. Lo único que se descarga de internet es el programa que lee el texto y el diccionario del idioma, una vez; tu documento no se envía a ninguna parte, ni a nosotros ni a nadie.

### ¿Por qué con algunos PDF es instantáneo y con otros tarda un minuto?

Porque son dos cosas distintas. La mayoría de los PDF que se generan por ordenador — una factura, un extracto, una nómina — ya llevan el texto dentro, y entonces solo hay que leerlo: es inmediato y sale exacto. Un PDF escaneado es una foto de un papel y no lleva texto ninguno, así que hay que reconocerlo letra a letra, y eso tarda. Miramos primero si hay texto y solo pasamos por reconocimiento las páginas que vienen vacías.

### ¿Qué precisión tiene el reconocimiento?

Con un escaneo limpio y recto, en torno al 98 % de las palabras. Con una foto hecha a pulso, con sombras o con el papel curvado, baja bastante. Los fallos típicos son confundir el 0 con la O, el 1 con la l y perder los acentos. Te decimos siempre si el texto salió de la capa del PDF o de un reconocimiento, porque en el segundo caso hay que repasarlo antes de usarlo para algo serio.

### ¿Cómo consigo que reconozca mejor una foto?

Luz uniforme y sin brillos, el papel lo más plano posible, la cámara de frente y no de lado, y que el texto ocupe casi todo el encuadre. Una foto de una hoja entera desde lejos da muchos menos aciertos que cuatro fotos de los cuatro cuartos. Y elige bien el idioma: en español es lo que recupera las eñes y los acentos.

### ¿Funciona con catalán, gallego o euskera?

Sí, están los tres en el selector, además del español, el inglés, el portugués, el francés, el alemán y el italiano. Cada idioma descarga su propio diccionario la primera vez que lo usas, unos 20 MB, y luego se queda guardado en tu navegador para las siguientes.

### ¿Hay límite de páginas?

Para leer la capa de texto, no. Para reconocer páginas escaneadas el tope son 30: por encima de eso, el tiempo en el navegador de alguien se vuelve irrazonable, sobre todo en un móvil. Si tienes un documento más largo, divídelo y pásalo por partes.

## Herramientas relacionadas

- [Analizador de Tickets Mercadona](https://herramient.as/analizador-tickets-mercadona): Analiza tus tickets PDF de Mercadona y obtén un desglose detallado por categorías, precios unitarios y totales. Exporta a CSV para análisis en Excel o Google Sheets.
- [Contador de Caracteres, Palabras y Párrafos](https://herramient.as/contador-caracteres-palabras): Analiza tu texto al instante: cuenta caracteres (con y sin espacios), palabras, párrafos, oraciones y calcula el tiempo de lectura. Perfecto para verificar límites de tweets, SMS, meta descripciones SEO y cualquier contenido con restricciones de longitud
- [Comparar Dos Textos](https://herramient.as/comparar-textos): Descubre qué ha cambiado entre dos versiones de un contrato o un documento
- [Calculadora de Tiempo de Lectura](https://herramient.as/tiempo-lectura): Calcula cuánto tardas en leer un texto, un documento o un número de páginas
