Diferencia entre revisiones de «Butiá que habla»

De Proyecto Butiá
Saltar a: navegación, buscar
 
(No se muestran 3 ediciones intermedias de otro usuario)
Línea 1: Línea 1:
 
Hemos trabajado para implementar el código Python en un bloque para Tortugarte.  
 
Hemos trabajado para implementar el código Python en un bloque para Tortugarte.  
 
En primer lugar, mediante consola, implementamos la linea de comando que permite emitir como sonido de habla las palabras "x":
 
En primer lugar, mediante consola, implementamos la linea de comando que permite emitir como sonido de habla las palabras "x":
 
+
<syntaxhighlight lang="python">
     espeak -v es-la "x"
+
     espeak -v es-la "x"  
+
</syntaxhighlight>
 
"espeak": es el comando que nos permite introducir una palabra o frase, y la computadora "habla" lo que se escribe.
 
"espeak": es el comando que nos permite introducir una palabra o frase, y la computadora "habla" lo que se escribe.
  
Línea 44: Línea 44:
  
 
Fuente de ayuda:
 
Fuente de ayuda:
[http://tonyforster.blogspot.com/2011/02/turtle-art-text-to-speech.html ejemplo publicado por Tony Foster].
+
[http://tonyforster.blogspot.com/2011/02/turtle-art-text-to-speech.html ejemplo publicado por Tony Forster].

Revisión actual del 11:56 17 nov 2011

Hemos trabajado para implementar el código Python en un bloque para Tortugarte. En primer lugar, mediante consola, implementamos la linea de comando que permite emitir como sonido de habla las palabras "x":

    espeak -v es-la "x"

"espeak": es el comando que nos permite introducir una palabra o frase, y la computadora "habla" lo que se escribe.

"-v es-la": parámetros agregados que cambian el idioma de la voz a español latinoamericano.

"x": palabra o frase a reproducir.

A partir de aquí comenzamos la creación del bloque en Tortugarte.

  primitive_dictionary['SpeakButia'] = self.SpeakButia
     palette.add_block('SpeakButia',                         # the name of your block
     style='basic-style-1arg',                               # the block style
     label=_('Speak Butiá'),                                # the label for the block
     default=['Soy el robot Butiá'],   
     prim_name='SpeakButia',                                 # code reference (see below)
     help_string=_('Reproduce en sonido el texto escrito.'))
     self.tw.lc.def_prim('SpeakButia', 1, lambda self, x: primitive_dictionary['SpeakButia'](x))

Luego definimos la función del bloque "Speak Butia":

  def SpeakButia(self, x):
     import os
     os.system('espeak -v es-la "%s"' % x)

"%s": indica al lenuaje que el tipo de dato que se ingresa es una cadena de caracteres(String).

Luego de insertar este código en el plugin correspondiente, tendremos creado nuestro nuevo bloque que nos permitirá reproducir lo que escribimos:


Habla1.png

El comportamiento en acción:


Fuente de ayuda: ejemplo publicado por Tony Forster.