Diferencia entre revisiones de «Butiá que habla»
(No se muestran 5 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 24: | Línea 23: | ||
Luego definimos la función del bloque "Speak Butia": | Luego definimos la función del bloque "Speak Butia": | ||
+ | |||
<syntaxhighlight lang="python"> | <syntaxhighlight lang="python"> | ||
def SpeakButia(self, x): | def SpeakButia(self, x): | ||
import os | import os | ||
os.system('espeak -v es-la "%s"' % x) | os.system('espeak -v es-la "%s"' % x) | ||
− | </syntaxhighlight | + | </syntaxhighlight> |
"%s": indica al lenuaje que el tipo de dato que se ingresa es una cadena de caracteres(String). | "%s": indica al lenuaje que el tipo de dato que se ingresa es una cadena de caracteres(String). | ||
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 | + | [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:
El comportamiento en acción:
Fuente de ayuda: ejemplo publicado por Tony Forster.