Seite 1 von 1

Kann man zeichen aus einer textdatei mit einem bild ersetzen

Verfasst: Freitag 18. Mai 2007, 10:45
von Teabag
Halli Hallo
Ich hätte da mal eine Frage:
Kann man eine textdatei lesen lassen ? (lesen = open("text.txt","r"))
und dann sagen, if dort ein "a" in der textdatei, dann printe dafür ein bild??
schon mal Danke im foraus!

Teabag

Verfasst: Freitag 18. Mai 2007, 10:46
von birkenfeld
Was für ein Bild denn? ASCII-Art?

Verfasst: Freitag 18. Mai 2007, 10:55
von Teabag
Irgend ein bild
ich mein halt ob man sagen kann
schreibe für alle "a" ein bild
z.B. C:/hi.png

Verfasst: Freitag 18. Mai 2007, 10:58
von EnTeQuAk
Wie soll das Bild dargestellt werden?

Für HTML könntest du so was machen:

Code: Alles auswählen

In [12]: text = 'dididididegegege a dididiefef'.replace('a', '<img src="http://www.python-forum.de/templates/subSilver/images/logo_phpBB.gif" />')

In [13]: text
Out[13]: 'dididididegegege <img src="http://www.python-forum.de/templates/subSilver/images/logo_phpBB.gif" /> dididiefef'
Auch wenn sich mir kein Sinn aus dem ganzen erschließt...

MfG EnTeQuAK

Verfasst: Freitag 18. Mai 2007, 11:21
von schlangenbeschwörer
EnTeQuAk hat geschrieben: Auch wenn sich mir kein Sinn aus dem ganzen erschließt...
Vlt. will er Smilies in einen Text bauen.

Ist aber halt entscheident, wie der Text ausgegeben werden soll.

In einem Tkinter.Text Widget kann man mit aTextWidget.image_create(...) Bilder in den Text einbauen. Musst du vorher nur noch nach dem Index in deinem Text suchen, wo das Bild rein soll und den entsprechenden zu ersetzenden Text löschen.

Gruß, jj

Verfasst: Freitag 18. Mai 2007, 11:50
von pyStyler
Hallo,
Ich versuch es auch mal.

Code: Alles auswählen

import os, sys
import Tkinter 
import tkMessageBox
import ImageTk # Python Pil:  http://www.pythonware.com/products/pil/

hp = Tkinter.Tk()
ordner_mit_bilder = 'bilder'
welches_bild = 'meinBild.jpg'
bild_ordner = os.path.join(ordner_mit_bilder, welches_bild)
print bild_ordner

bilddateien = []

def _funktion(textDatei):
    text_datei = open(textDatei, 'r')
    
    for text in text_datei.readlines():
        text = text.split()
        
        if 'a' in text:
            bild_initailisieren = ImageTk.PhotoImage(file=bild_ordner)
            Tkinter.Label(hp, image=bild_initailisieren).pack()
            bilddateien.append(bild_initailisieren)
        else:
            tkMessageBox.showerror(title='fehler', message='kein a gefunden!')
           
def _main():
    funk = _funktion('textDatei.txt')
    Tkinter.Button(hp, text='Schliessen', 
                command=hp.quit).pack(side=Tkinter.BOTTOM)
    hp.mainloop()
if __name__=='__main__':
    _main()
Gruss
pyStyler