PDF Get Words
PDF Get Words
Sección titulada «PDF Get Words»Tipo: pdf-get-words · Paquete: PDF Activities v1.2.4 · Salida: List
Desde: v1.1.0
Extrae todas las palabras del PDF junto con su página y su caja delimitadora (posición y tamaño). Es la versión “con posición” de PDF Get Text: en vez de un bloque de texto, te dice dónde está cada palabra dentro de la página.
Cómo funciona
Sección titulada «Cómo funciona»Recorre las páginas indicadas en orden ascendente y devuelve una lista plana de palabras (no agrupadas por página ni por línea): cada elemento lleva su propio número de página. Para ordenarlas por línea, usa y y luego x. No modifica el archivo.
Las coordenadas usan origen arriba-izquierda — el mismo que las imágenes y el OCR. Así, las palabras que devuelve esta actividad y las líneas que devuelve OCR Get Lines hablan el mismo idioma, y puedes localizar un valor en la página venga de donde venga.
Por defecto las coordenadas salen en puntos PDF (un punto es 1/72 de pulgada; una hoja A4 mide unos 595 × 842 puntos). Si indicas dpi, salen en píxeles de un render a esa resolución (puntos × dpi / 72): eso hace que cuadren con los archivos que genera PDF To Images al mismo dpi, y puedes recortar o dibujar sobre la imagen usando estas coordenadas directamente.
Parámetros requeridos
Sección titulada «Parámetros requeridos»| Parámetro | Tipo | Por defecto | Descripción |
|---|---|---|---|
path | string | — | Ruta del archivo PDF. |
Parámetros opcionales
Sección titulada «Parámetros opcionales»| Parámetro | Tipo | Por defecto | Descripción |
|---|---|---|---|
pages | string | List | "all" | Páginas a leer: "all" o un rango como "1-3,5,7-9", o una lista de números como la de PDF Search Text. Desde la versión 1.2.4. |
dpi | int | — | Si lo indicas, las coordenadas salen en píxeles de un render a esa resolución (cuadran con PDF To Images al mismo DPI). Sin valor, en puntos PDF. Entero entre 36 y 1200. |
Devuelve una List de diccionarios, una entrada por palabra:
| Clave | Tipo | Qué es |
|---|---|---|
text | string | La palabra. |
page | int | Número de página (desde 1). |
x | number | Distancia desde el borde izquierdo de la página hasta el inicio de la palabra. |
y | number | Distancia desde el borde superior de la página hasta el borde superior de la palabra. |
width | number | Ancho de la palabra. |
height | number | Alto de la palabra. |
Las cuatro medidas van en puntos PDF, o en píxeles si indicaste dpi, y tienen decimales. Si las páginas no tienen texto, la lista sale vacía.
[ { "text": "TOTAL", "page": 1, "x": 72.0, "y": 640.5, "width": 38.2, "height": 9.1 }, { "text": "1.250.000", "page": 1, "x": 450.3, "y": 640.5, "width": 52.8, "height": 9.1 }]Errores comunes
Sección titulada «Errores comunes»| Mensaje | Causa y solución |
|---|---|
Página(s) fuera de rango: …. El documento tiene … páginas. | El rango pide páginas que no existen. |
'dpi' debe ser un número entero. Se recibió: …. | dpi no es un entero (p. ej. "200.5" o un texto). |
'dpi' debe estar entre 36 y 1200. Se recibió: …. | Resolución fuera del rango admitido. |
No se encontró el archivo. / 'path' es obligatorio. | Ver Errores comunes del paquete. |
| Error de la biblioteca de PDF al abrir el archivo | PDF protegido con contraseña o dañado. Ver PDF protegidos y dañados. |
Ejemplo
Sección titulada «Ejemplo»Renderizar el PDF y extraer las palabras con coordenadas que casan con las imágenes:
PDF To Images path = rutaFactura outputDir = "C:/temp/paginas" dpi = 200 → output: imagenesPDF Get Words path = rutaFactura dpi = 200 → output: palabrasLog message = "Palabras: " + count(palabras)Localizar dónde aparece un valor en la página:
PDF Get Words path = ruta pages = "1" → output: palabrasFor Each items = palabras itemVariable = palabra └─ activities: If condition = palabra["text"] == "TOTAL" └─ then: Log message = "TOTAL está en x=" + palabra["x"] + " y=" + palabra["y"]Actividades relacionadas
Sección titulada «Actividades relacionadas»- PDF Get Text — el texto sin coordenadas.
- PDF To Images — renderizar las páginas a imagen al mismo DPI.
- OCR Get Lines — lo mismo, pero para PDF escaneados e imágenes.