guía de uso para cytolk
Publicado 13 de Mayo de 2025 a las 16:21 por marco-ml
Guía Completa de Cytolk
Introducción
Cytolk es un wrapper de Cython para la biblioteca Tolk, diseñado para facilitar la interacción con lectores de pantalla en Python. Esta guía cubrirá todos los aspectos de su uso, desde la instalación hasta ejemplos avanzados.
Instalación
pip install cytolk
Importación y Configuración Básica
from cytolk import tolk
# Cargar Tolk con búsqueda extendida de DLLs
tolk.load() # Por defecto, busca DLLs automáticamente
Funciones Principales
1. Detección de Lector de Pantalla
# Detectar el lector de pantalla actual
screen_reader = tolk.detect_screen_reader()
print(f"Lector de pantalla: {screen_reader}")
2. Verificación de Capacidades
# Verificar soporte de voz
if tolk.has_speech():
print("Lector de pantalla soporta síntesis de voz")
# Verificar soporte de braille
if tolk.has_braille():
print("Lector de pantalla soporta braille")
3. Salida de Texto
# Hablar texto
tolk.speak("Hola, este es un ejemplo de Cytolk")
# Mostrar en braille
tolk.braille("Texto en braille")
# Salida combinada (voz y braille)
tolk.output("Salida combinada", interrupt=True)
4. Control de Habla
# Verificar si está hablando
if tolk.is_speaking():
print("El lector de pantalla está hablando")
# Silenciar
tolk.silence()
Configuración de SAPI
# Habilitar SAPI como opción de respaldo
tolk.try_sapi(True)
# Preferir SAPI (primero o último en la lista)
tolk.prefer_sapi(False) # Como último recurso
Uso con Administrador de Contexto
with tolk.tolk():
# Todas las operaciones de Tolk se realizan aquí
tolk.speak("Hola desde el administrador de contexto")
# Tolk se carga y descarga automáticamente
Manejo de Errores
try:
tolk.load()
# Operaciones con Tolk
except Exception as e:
print(f"Error al usar Cytolk: {e}")
finally:
tolk.unload() # Siempre descargar
Consideraciones Importantes
- Asegúrate de tener los DLLs correctos para tu lector de pantalla
- Algunas funciones requieren que Tolk esté inicializado
- La mayoría de las funciones devuelven un booleano indicando éxito o fallo
Solución de Problemas
Problemas Comunes:
- Verificar que los DLLs estén en el directorio correcto
- Comprobar que el lector de pantalla esté en ejecución
- Usar
tolk.is_loaded()para verificar la inicialización
PyInstaller y Nuitka
Para empaquetar aplicaciones con Cytolk:
- PyInstaller: Copiar el hook de
pyinstaller_hooks/hook-cytolk.py - Nuitka: Deshabilitar búsqueda extendida de rutas al cargar
Ejemplo Completo
from cytolk import tolk
def main():
try:
with tolk.tolk():
# Detectar y usar lector de pantalla
screen_reader = tolk.detect_screen_reader()
if screen_reader:
tolk.speak(f"Lector de pantalla detectado: {screen_reader}")
tolk.braille("Cytolk en acción")
else:
print("No se detectó lector de pantalla")
except Exception as e:
print(f"Error: {e}")
if __name__ == "__main__":
main()