Ir al contenido

OCR Find Text

Tipo: ocr-find-text  ·  Paquete: OCR Activities v1.2.5  ·  Salida: object

Busca un texto dentro de una imagen o región de pantalla y devuelve su posición (coordenadas). Útil para localizar un elemento por su etiqueta y luego, por ejemplo, hacer clic cerca de él — cuando no hay otra forma de ubicarlo.

Ejecuta OCR sobre la fuente y busca text palabra por palabra:

  • Fuente: si indicas path, analiza ese archivo de imagen y las coordenadas de la región se ignoran. Si no, captura la región de pantalla x/y/width/height (las cuatro son obligatorias en ese caso y requieren un escritorio interactivo).
  • Comparación por palabra: devuelve la primera palabra reconocida que contiene text, recorriendo las líneas de arriba abajo. Como compara contra palabras sueltas, un text con espacios ("Total a pagar") no se encuentra: busca la palabra más distintiva ("pagar"). "Total" sí encuentra la palabra Total:.
  • Mayúsculas: por defecto no distingue mayúsculas (caseSensitive = false).
  • Coordenadas: en píxeles, relativas a la imagen analizada. Con una región de pantalla, son relativas a la esquina de la región: suma x e y de la región para obtener la posición en pantalla.
  • Esta actividad no tiene preprocesado.
ParámetroTipoPor defectoDescripción
textstring—Texto a buscar dentro de una palabra del resultado del OCR.
ParámetroTipoPor defectoDescripción
pathstring—Ruta de la imagen. Si se indica, se usa en lugar de la región de pantalla.
xint—Coordenada izquierda de la región de pantalla (px). Obligatoria si no hay path.
yint—Coordenada superior de la región de pantalla (px). Obligatoria si no hay path.
widthint—Ancho de la región de pantalla (px). Obligatorio si no hay path; mayor que cero.
heightint—Alto de la región de pantalla (px). Obligatorio si no hay path; mayor que cero.
languagestring"eng"Idioma del texto: código de Tesseract (eng, spa, eng+spa) o etiqueta regional (es-CO, en-US). Ver idioma.
caseSensitiveboolfalseDistinguir mayúsculas y minúsculas.

Devuelve un object (diccionario):

ClaveTipoContenido
foundbooltrue si se encontró el texto.
x, ynumberEsquina superior izquierda de la palabra encontrada (px).
width, heightnumberTamaño de la palabra (px).
wordstringLa palabra completa reconocida que contiene text.
linestringLa línea completa donde está la palabra.

Si no lo encuentra, devuelve solo { "found": false } (sin el resto de claves); no es un error.

OCR Find Text x = 200 y = 100 width = 800 height = 150 text = "Exportar" language = "spa" → output: pos
If condition = pos["found"]
└─ then:
Set Variable name = centroX value = 200 + num(pos["x"]) + num(pos["width"]) / 2
Set Variable name = centroY value = 100 + num(pos["y"]) + num(pos["height"]) / 2
Log message = "Botón en pantalla: " + centroX + ", " + centroY + " (línea: " + pos["line"] + ")"
MensajeCausa y solución
'text' es obligatorio.Falta text.
No se encontró el archivo.La ruta de path no existe en la máquina del robot.
Se requiere 'path' o las coordenadas de pantalla 'x', 'y', 'width', 'height'.No hay path ni x. Indica una de las dos fuentes.
'y' es obligatorio para la región de pantalla. (igual para width, height)Se dio x pero falta otra coordenada de la región.
'width' y 'height' deben ser mayores que cero.El tamaño de la región es 0 o negativo.
No se encontró el idioma de Tesseract '…' en '…'. Disponibles: [eng, spa].El código de language no está instalado.