Text slider with Python and turtle

A simple script to show text in sequence for a presentation

import turtle
import time


def erasableWrite(tortoise, name, font, align, reuse=None):
    eraser = turtle.Turtle() if reuse is None else reuse
    eraser.hideturtle()
    eraser.up()
    eraser.setposition(tortoise.position())
    eraser.write(name, font=font, align=align)
    return eraser


t = turtle.Turtle()
t.hideturtle()
t.up()

def text(tx, tm=1):
	t.goto(0, 0)
	eraseble = erasableWrite(t, tx, font=("Arial", 20, "normal"), align="center")
	time.sleep(tm)
	eraseble.clear()

mytext = """
Hi
This is my presentation
I wish you to like it
See ya soon
pythonprogramming.altervista.org
""".splitlines()

[text(m) for m in mytext]


turtle.done()

New version with positioning

In this script you can put the position for the text

import turtle
import time


def erasableWrite(tortoise, name, font, align, reuse=None):
    eraser = turtle.Turtle() if reuse is None else reuse
    eraser.hideturtle()
    eraser.up()
    eraser.setposition(tortoise.position())
    eraser.write(name, font=font, align=align)
    return eraser


t = turtle.Turtle()
t.hideturtle()
t.up()

def text(tx, tm=1, w=0, h=0):
    tx = tx.split()
    print(tx)
    print(tx[:-2])
    print(tx[-2])
    print(tx[-1])
    print(tx)
    w = int(tx[-2])
    h = int(tx[-1])
    t.goto(w, h)
    tx = " ".join(tx[:-2])
    eraseble = erasableWrite(t, tx, font=("Arial", 20, "normal"), align="center")
    time.sleep(tm)
    eraseble.clear()

mytext = """Hi 0 0
This is my presentation 100 -100
I wish you to like it 200 0
See ya soon 0 100
pythonprogramming.altervista.org 0 0""".splitlines()

[text(m) for m in mytext]


turtle.done()


Subscribe to the newsletter for updates
Tkinter templates
My youtube channel

Twitter: @pythonprogrammi - python_pygame

Videos

Speech recognition game

Pygame's Platform Game

Other Pygame's posts