Así puedes extraer texto con Spectacle, la herramienta de capturas de pantalla de KDE

Desde el pasado febrero, coincidiendo con el lanzamiento de Plasma 6.6, Spectacle es capaz de extraer texto de las capturas de pantalla. Se conoce a esta característica o capacidad como reconocimiento óptico de caracteres, OCR por sus siglas en inglés. Ahora bien, no es posible por defecto, y uno se puede preguntar por qué no ve la opción a pesar de haber actualizado a la última versión, que actualmente ya va por Plasma 6.6.5.
El motivo es sencillo: faltan los paquetes necesarios. Esto es algo que también ocurre con la opción de escanear un código QR para acceder a una red WiFi, pero este es otro tema que debería tratarse en otro artículo. Aquí vamos a explicar cómo activar el soporte para OCR en Spectacle, siempre y cuando se esté en Plasma 6.6 o posterior.
Activar el soporte para OCR en Spectacle si se está en Plasma 6.6 o posterior
Cuando hacemos una captura de pantalla tras actualizar, vemos que no aparece la opción de extraer texto cómo sí mencionan en las notas de lanzamiento. Hay hasta un vídeo de ejemplo:
Si abrimos Spectacle y vamos a sus ajustes, vemos que en el apartado de OCR hay un icono con una «i» que nos aporta más información. Bueno, sencillamente nos dice que no está disponible:

Spectacle es capaz de extraer texto usando su interfaz, pero la magia la hace Tesseract OCR. Es algo habitual en el software que usan los sistemas con base Linux: muchos programas son el frontend, pero dependen de algo de backend que haga el trabajo.
Para que el mensaje de la captura anterior desaparezca y en su lugar aparezcan las opciones de OCR, lo que tenemos que hacer es instalar los paquetes de Tesseract necesarios. En mi caso, con una distribución con base Arch como Manjaro, los paquetes necesarios son:
- tesseract
- tesseract-data-osd
- tesseract-data-cat
- tesseract-data-eng
- tesseract-data-spa

De los paquetes anteriores, los acabados en -cat, -eng y -spa son los idiomas que yo quiero que detecte (catalán, pues soy del este de España, inglés y español). tesseract es el paquete principal, y el acabado en -osd sirve para que el software sea capaz de detectar la orientación de la escritura, lo que, en teoría, le permitirá detectar texto aunque esté rotado 90º, por ejemplo.
Está claro, pero no está de más remarcarlo: si alguien necesita más idiomas, sólo tiene que instalar los paquetes para ellos. Por ejemplo, el acabado en -ita para el italiano, -fra para francés o -rus para el ruso.
Instalación de lo necesario
La instalación en las diferentes distribuciones dependerá de cada una de ellas. En el caso de Manjaro se puede hacer con Pamac (su herramienta gráfica de gestión de paquetes), pero también con sudo pacman -S tesseract tesseract-data-osd tesseract-data-cat tesseract-data-eng tesseract-data-spa. En otras distribuciones, como las de base Debian u openSUSE, el paquete puede ser tesseract-ocr.
Tras la instalación de los paquetes ya se verá la opción al intentar hacer la captura de pantalla, tal y como se ve en la captura de cabecera y en el vídeo explicativo de KDE. Al hacer clic en «Extraer texto», veremos una notificación que nos permitirá copiar el texto al portapapeles o abrirlo en un editor de textos.
Ojo: hay que activar los idiomas desde los ajustes
Cuando la opción pasa a estar disponible, también cambia lo que aparece en los ajustes. El mensaje de que no está disponible pasa a ser la sección «Reconocimiento de texto (OCR)». En esta sección tenemos sólo dos apartados:
- Selección de los idiomas: con cajas de verificación. Marcaremos los idiomas de los que queremos extraer texto. También es una buena manera de ver qué idiomas hemos instalado y cuáles están soportados.
- Cerrar tras la extracción, lo que omite guardar automáticamente. Esto ya al gusto del consumidor, pero yo lo tengo desmarcado. Con esto hago que se copie en el portapapeles siempre.
Es un proceso sencillo, pero que no está activado por defecto. Instalando unos pocos paquetes, Spectacle ya será capaz de «leer».
