How to Write Text on Image in Python?

By Hardik Savani October 30, 2023 Category : Python

Hello Friends,

This tutorial will provide an example of python add text to image. We will look at an example of how to add text on image in python. We will look at an example of how to write text on image in python. let us discuss about how to add text to a picture in python. Let's see below example how to put text on image in python.

Sometimes, we need to write text on an image and save it or share it with the customer, then I will give you a simple example of adding text on an image with python. we will use PIL library to write text on image. i will share with you two simple examples, one will simply add text on the image, and in another example, we will add text with a custom font family. so let's see both examples one by one.

Example 1:

You need to take the "sample.png" image and put it in your root folder.

main.py

# Importing the PIL library
from PIL import Image
from PIL import ImageDraw
   
# Open an Image from Path
image = Image.open('sample.png')
   
# Call draw Method to add 2D graphics
I1 = ImageDraw.Draw(image)
   
# Add Text to Image
I1.text((500, 400), "This is python post example", fill=(255, 0, 0))
   
# Display edited image
image.show()
   
# Save the image
image.save("sample2.png")

Output:

Example 2:

You need to take the "sample.png" image and put it in your root folder. Then you need to download "arial.ttf" font family and put it into the root folder.

main.py

# Importing the PIL library
from PIL import Image
from PIL import ImageDraw
from PIL import ImageFont
   
# Open an Image from Path
image = Image.open('sample.png')
   
# Call draw Method to add 2D graphics
I1 = ImageDraw.Draw(image)
  
# Custom font family
myFont = ImageFont.truetype('arial.ttf', 50)
   
# Add Text to Image
I1.text((300, 350), "This is python post example", font=myFont, fill=(255, 0, 0))
   
# Display edited image
image.show()
   
# Save the image
image.save("sample3.png")

Output:

I hope it can help you...

Tags :
Shares