OCR for Desktop Automation: Read Screen Text Before Clicking

macro8n robot exploring a park

Desktop automation often needs to know what appeared on screen before it chooses the next step. A fixed coordinate can still be useful, but it cannot tell whether a page finished loading, a message appeared, or the expected value is visible. On Windows, macro8n includes a local OCR action that reads text from a selected screen region so a workflow can make a simple decision before continuing.

What OCR does in a workflow

Optical character recognition turns visible characters in an image into text. In macro8n, the Read screen text (OCR) action captures the configured region and uses the Windows OCR runtime on the device. The recognized result is stored in the workflow variable you choose, such as ocr_text. The action also exposes a Boolean ocr_has_text for branching.

This is useful for a visible status label, a confirmation message, a total, or a short piece of text that determines what should happen next. OCR does not understand the full meaning of a screen and should not be treated as proof that a transaction or other important operation succeeded.

A practical setup

  1. Wait for the target window or screen to be ready. If the application loads at different speeds, use an explicit wait or a window condition before reading.
  2. Choose the monitor and the smallest region that contains the text. A focused region reduces unrelated words and makes the result easier to check.
  3. Select a recognition language that matches the text and confirm that its Windows language pack is installed. The action supports the Windows user languages setting, Portuguese (Brazil), and English (United States).
  4. Set a clear result variable name, then connect the Text found, No text, and Error outputs to deliberate next steps.

Branch on the result, not on a guess

After OCR, use a condition to check the returned text or the ocr_has_text value. For example, if a page should show “Saved”, continue only when that label is detected. If no text is found, wait and try a limited number of times, or stop and ask for review. Send errors to a separate path so a missing Windows language pack or invalid region is not mistaken for an empty result.

Keep the target phrase specific. A generic word such as “OK” may appear in the wrong dialog. When the next step can change or submit data, verify the application and context as well as the text.

Make screen reading more reliable

  • Keep the text large and unobstructed; avoid capturing a region that includes animations or overlapping windows.
  • Check display scaling, monitor selection, and the region coordinates after changing the desktop layout.
  • Use a language pack that matches the screen. OCR can misread similar characters, punctuation, or small text.
  • Test with expected and unexpected states, including the “not found” case. Do not let a failed read silently continue to a consequential click.

The OCR action is available on Windows. Recognition happens locally using the installed Windows OCR language pack; the recognized text remains in the workflow variable and this action does not add it to logs or upload it. OCR is a practical signal for a workflow, not a replacement for human review when the result matters.

Uma automação desktop muitas vezes precisa saber o que apareceu na tela antes de escolher o próximo passo. Uma coordenada fixa ainda pode ser útil, mas não informa se uma página terminou de carregar, se uma mensagem apareceu ou se o valor esperado está visível. No Windows, o macro8n oferece uma ação local de OCR que lê o texto de uma região selecionada para o fluxo tomar uma decisão simples antes de continuar.

O que o OCR faz em um fluxo

O reconhecimento óptico de caracteres transforma letras visíveis em uma imagem em texto. No macro8n, a ação Ler texto da tela (OCR) captura a região configurada e usa o mecanismo de OCR do Windows no próprio dispositivo. O resultado reconhecido fica na variável escolhida, por exemplo texto_ocr. A ação também oferece um valor booleano ocr_has_text para usar em condições.

Isso ajuda a identificar um status visível, uma mensagem de confirmação, um total ou um trecho curto que define o que deve acontecer em seguida. O OCR não compreende todo o significado da tela e não deve ser tratado como prova de que uma transação ou outra operação importante foi concluída.

Configuração prática

  1. Aguarde a janela ou a tela desejada ficar pronta. Se o carregamento variar, use uma espera explícita ou uma condição de janela antes da leitura.
  2. Escolha o monitor e a menor região que contenha o texto. Uma área focada reduz palavras irrelevantes e facilita conferir o resultado.
  3. Selecione um idioma de reconhecimento compatível com o texto e confirme se o pacote de idioma do Windows está instalado. A ação oferece os idiomas do usuário do Windows, português (Brasil) e inglês (Estados Unidos).
  4. Escolha um nome claro para a variável de resultado e conecte as saídas Texto encontrado, Sem texto e Erro a próximos passos intencionais.

Decida pelo resultado, não por suposição

Depois do OCR, use uma condição para conferir o texto retornado ou o valor ocr_has_text. Por exemplo, se a página deve mostrar “Salvo”, continue apenas quando esse rótulo for detectado. Se nenhum texto aparecer, aguarde e tente novamente um número limitado de vezes ou pare para revisão. Encaminhe erros por uma saída própria para que a falta de um pacote de idioma do Windows ou uma região inválida não seja confundida com resultado vazio.

Prefira uma frase específica. Uma palavra genérica como “OK” pode aparecer em outra janela. Se o próximo passo puder alterar ou enviar dados, confira também o aplicativo e o contexto da tela.

Como melhorar a confiabilidade da leitura

  • Deixe o texto grande e sem obstruções; evite capturar animações ou janelas sobrepostas.
  • Confira escala de exibição, monitor e coordenadas da região após mudar o layout do desktop.
  • Use um pacote de idioma compatível com o texto. O OCR pode confundir caracteres parecidos, pontuação ou letras pequenas.
  • Teste estados esperados e inesperados, inclusive o caso em que o texto não é encontrado. Uma falha de leitura não deve seguir silenciosamente para um clique importante.

A ação de OCR está disponível no Windows. O reconhecimento é feito localmente com o pacote de OCR instalado; o texto reconhecido fica na variável do fluxo e esta ação não o adiciona aos logs nem o envia. O OCR é um sinal útil para o fluxo, mas não substitui a revisão humana quando o resultado é importante.

Una automatización de escritorio a menudo necesita saber qué apareció en la pantalla antes de elegir el siguiente paso. Una coordenada fija puede seguir siendo útil, pero no indica si una página terminó de cargar, si apareció un mensaje o si el valor esperado está visible. En Windows, macro8n incluye una acción local de OCR que lee texto de una región seleccionada para que el flujo tome una decisión sencilla antes de continuar.

Qué hace el OCR en un flujo

El reconocimiento óptico de caracteres convierte los caracteres visibles de una imagen en texto. En macro8n, la acción Leer texto de pantalla (OCR) captura la región configurada y usa el motor de OCR de Windows en el propio dispositivo. El resultado reconocido se guarda en la variable elegida, por ejemplo texto_ocr. La acción también ofrece el valor booleano ocr_has_text para crear una condición.

Esto sirve para detectar un estado visible, un mensaje de confirmación, un total o un fragmento breve que determine qué debe ocurrir después. El OCR no comprende todo el significado de la pantalla y no debe considerarse una prueba de que una transacción u otra operación importante se completó.

Configuración práctica

  1. Espera a que la ventana o pantalla de destino esté lista. Si el tiempo de carga cambia, añade una espera explícita o una condición de ventana antes de leer.
  2. Elige el monitor y la región más pequeña que incluya el texto. Un área enfocada reduce palabras irrelevantes y facilita revisar el resultado.
  3. Selecciona un idioma de reconocimiento que coincida con el texto y confirma que el paquete de idioma de Windows esté instalado. La acción ofrece los idiomas del usuario de Windows, portugués (Brasil) e inglés (Estados Unidos).
  4. Asigna un nombre claro a la variable de resultado y conecta las salidas Texto encontrado, No se encontró texto y Error con pasos intencionales.

Decide según el resultado, no por intuición

Después del OCR, usa una condición para comprobar el texto devuelto o el valor ocr_has_text. Por ejemplo, si la página debe mostrar “Guardado”, continúa solo cuando se detecte esa etiqueta. Si no se encuentra texto, espera y vuelve a intentarlo un número limitado de veces, o detén el flujo para revisarlo. Envía los errores por una ruta separada para no confundir la falta de un paquete de idioma o una región inválida con un resultado vacío.

Usa una frase concreta. Una palabra genérica como “OK” puede aparecer en otra ventana. Si el siguiente paso puede cambiar o enviar datos, comprueba también la aplicación y el contexto.

Mejora la fiabilidad de la lectura

  • Mantén el texto grande y despejado; evita capturar animaciones o ventanas superpuestas.
  • Revisa la escala de pantalla, el monitor y las coordenadas de la región después de cambiar la disposición del escritorio.
  • Usa un paquete de idioma adecuado. El OCR puede confundir caracteres parecidos, puntuación o texto pequeño.
  • Prueba estados esperados e inesperados, incluido el caso en el que no se encuentra el texto. Una lectura fallida no debe continuar en silencio hacia un clic importante.

La acción de OCR está disponible en Windows. El reconocimiento se realiza localmente con el paquete OCR instalado; el texto reconocido permanece en la variable del flujo y esta acción no lo agrega a los registros ni lo envía. El OCR es una señal práctica para el flujo, pero no reemplaza la revisión humana cuando el resultado es importante.

Pesquisar este blog

Explore por tema

Aulas e mentoria macro8n

macro8n content

macro8n blog

Updates, guides, and practical ideas for building visual automations on Windows.

Latest posts

Carregando publicações…