Tekst op de achtergrond zetten

Extra verdieping bij het programmeren in Python

Je hebt nu alle bestanden om jouw meme te maken:

Python script maken

New file

Je hebt nu deze drie bestanden waar je mee werkt:

Files


De afbeelding laden met Python

Weet je nog hoe je een afbeelding moet inladen? Kijk in je vorige script en laadt de afbeelding in.


Lettertype laden

De ImageFont module van Pillow heb je nodig om met lettertypes te werken. Deze moet je dus ook importeren in je script.

Nu kun je het Truetype lettertype inladen:

lettertype = ImageFont.truetype("<lettertype bestand>", <lettergrootte>)

Probeer het script uit te voeren. Als het goed is, krijg je nu geen foutmeldingen. Het klopt dat je nog niets ziet.


Tekst schrijven op de afbeelding

Om iets te tekenen op een afbeelding hebben we als laatste nog de ImageDraw module nodig van Pillow.

Met de kennis die je nu hebt, kun je de ImageDraw module nu inladen. Lukt dat je?

Bedenk nu korte om op de afbeelding te zetten.

Je maakt nu een onzichtbaar teken gebied aan over de afbeelding met deze code:

# Vraag aan de ImageDraw module om een tekengebied te maken op de achtergrond afbeelding
tekengebied = ImageDraw.Draw(achtergrond)

Op dat tekengebied ga je schrijen met onderstaande code.

# Tekst schrijven
tekst = "Coding in Python\nNo problemo!"
tekengebied.multiline_text((10,10), tekst, font=lettertype, fill=(0,0,0))

Korte uitleg:

Nu kijken wat er is gebeurd door de afbeelding te tonen:

# Het resultaat tonen
achtergrond.show()

# En opslaan onder een andere naam
achtergrond.save("meme_met_tekst.jpg")

De afbeelding staat als het goed is nu in je map

Zo ziet dat er bij mij uit:

En dit is de meme:


Volgende stap