πŸ“Έ Как Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ тСкст Π½Π° ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π² Python: простыС шаги для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…

Как Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ тСкст Π½Π° ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π² Python?

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ тСкст Π½Π° ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π² Python, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ PIL (Python Imaging Library). Π’ΠΎΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΊΠΎΠ΄Π°:


from PIL import Image, ImageDraw, ImageFont

# ΠžΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΈΠ΅ изобраТСния
image = Image.open('image.jpg')
draw = ImageDraw.Draw(image)

# Установка ΡˆΡ€ΠΈΡ„Ρ‚Π° ΠΈ Π΅Π³ΠΎ Ρ€Π°Π·ΠΌΠ΅Ρ€Π°
font = ImageFont.truetype('arial.ttf', size=30)

# Настройка ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚ для размСщСния тСкста
x = 10
y = 10

# Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ тСкста Π½Π° ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅
text = "ΠŸΡ€ΠΈΠ²Π΅Ρ‚, ΠΌΠΈΡ€!"
draw.text((x, y), text, font=font)

# Π‘ΠΎΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½ΠΎΠ³ΠΎ изобраТСния
image.save('output.jpg')

Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΡ‹ ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅ΠΌ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅, создаСм Draw-ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ для рисования, устанавливаСм ΡˆΡ€ΠΈΡ„Ρ‚ ΠΈ Π΅Π³ΠΎ Ρ€Π°Π·ΠΌΠ΅Ρ€, Π·Π°Π΄Π°Π΅ΠΌ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ для размСщСния тСкста ΠΈ добавляСм тСкст Π½Π° ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅. Π—Π°Ρ‚Π΅ΠΌ ΠΌΡ‹ сохраняСм ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½ΠΎΠ΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ с Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π½Ρ‹ΠΌ тСкстом Π² Π½ΠΎΠ²Ρ‹ΠΉ Ρ„Π°ΠΉΠ» с ΠΈΠΌΠ΅Π½Π΅ΠΌ "output.jpg".

Π”Π΅Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΎΡ‚Π²Π΅Ρ‚

Как Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ тСкст Π½Π° ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Python

Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ тСкста Π½Π° ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ΠΌ Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ… случаях, Π±ΡƒΠ΄ΡŒ Ρ‚ΠΎ созданиС ΠΌΠ΅ΠΌΠΎΠ², Π΄ΠΈΠ·Π°ΠΉΠ½Π° ΠΈΠ»ΠΈ водяных Π·Π½Π°ΠΊΠΎΠ². Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ рассмотрим, ΠΊΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Python для добавлСния тСкста Π½Π° ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅.

Π¨Π°Π³ 1: Установка Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Pillow

Для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с изобраТСниями Π² Python ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ Pillow. Если Ρƒ вас Π΅Ρ‰Π΅ Π½Π΅Ρ‚ этой Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π΅Π΅ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹:

pip install pillow

ПослС установки Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Pillow ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Π½Π°Ρ‡Π°Ρ‚ΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π΅Π΅ для добавлСния тСкста Π½Π° ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅.

Π¨Π°Π³ 2: ΠžΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΈΠ΅ ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ изобраТСния

Π‘Π½Π°Ρ‡Π°Π»Π° Π½Π°ΠΌ понадобится ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ тСкст. ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ это с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Image.open() ΠΈΠ· Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Pillow:

from PIL import Image

# ΠžΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅ΠΌ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅
image = Image.open("image.jpg")

Π—Π΄Π΅ΡΡŒ "image.jpg" - это ΠΏΡƒΡ‚ΡŒ ΠΊ Π²Π°ΡˆΠ΅ΠΌΡƒ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΡŽ. Π£Π±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ находится Π² Ρ‚ΠΎΠΉ ΠΆΠ΅ ΠΏΠ°ΠΏΠΊΠ΅, Π³Π΄Π΅ находится ваш Python-скрипт.

ПослС открытия изобраТСния ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ ImageDraw, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ позволяСт Π½Π°ΠΌ Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ тСкст ΠΈ графичСскиС элСмСнты Π½Π° ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅:

from PIL import Image, ImageDraw, ImageFont

# Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ ImageDraw
draw = ImageDraw.Draw(image)

Π¨Π°Π³ 3: Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ тСкста Π½Π° ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅

Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ тСкст Π½Π° ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΌΠ΅Ρ‚ΠΎΠ΄ text() ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ImageDraw. Π£ΠΊΠ°ΠΆΠ΅ΠΌ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ Ρ€Π°Π·ΠΌΠ΅Ρ‰Π΅Π½ тСкст, ΠΈ сам тСкст:

# УстанавливаСм ΡˆΡ€ΠΈΡ„Ρ‚ ΠΈ Ρ€Π°Π·ΠΌΠ΅Ρ€ тСкста
font = ImageFont.truetype("arial.ttf", 24)

# Π£ΠΊΠ°Π·Ρ‹Π²Π°Π΅ΠΌ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ ΠΈ тСкст
text = "ΠŸΡ€ΠΈΠ²Π΅Ρ‚, ΠΌΠΈΡ€!"
text_position = (50, 50)
text_color = (255, 255, 255)  # Π‘Π΅Π»Ρ‹ΠΉ Ρ†Π²Π΅Ρ‚

# ДобавляСм тСкст Π½Π° ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅
draw.text(text_position, text, font=font, fill=text_color)

Π—Π΄Π΅ΡΡŒ ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ ΡˆΡ€ΠΈΡ„Ρ‚ Arial Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠΌ 24 пиксСля. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΡˆΡ€ΠΈΡ„Ρ‚ ΠΈ Ρ€Π°Π·ΠΌΠ΅Ρ€, Ссли Ρ…ΠΎΡ‚ΠΈΡ‚Π΅.

Π¨Π°Π³ 4: Π‘ΠΎΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½ΠΎΠ³ΠΎ изобраТСния

ПослСдний шаг - сохранСниС ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½ΠΎΠ³ΠΎ изобраТСния с Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π½Ρ‹ΠΌ тСкстом. ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ это с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° save() ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Image:

# БохраняСм ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½ΠΎΠ΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅
image.save("edited_image.jpg")

Π—Π΄Π΅ΡΡŒ "edited_image.jpg" - это имя Ρ„Π°ΠΉΠ»Π°, ΠΏΠΎΠ΄ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ Π±ΡƒΠ΄Π΅Ρ‚ сохранСно ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½ΠΎΠ΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅.

ΠŸΠΎΠ»Π½Ρ‹ΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΊΠΎΠ΄Π°

from PIL import Image, ImageDraw, ImageFont

# ΠžΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅ΠΌ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅
image = Image.open("image.jpg")

# Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ ImageDraw
draw = ImageDraw.Draw(image)

# УстанавливаСм ΡˆΡ€ΠΈΡ„Ρ‚ ΠΈ Ρ€Π°Π·ΠΌΠ΅Ρ€ тСкста
font = ImageFont.truetype("arial.ttf", 24)

# Π£ΠΊΠ°Π·Ρ‹Π²Π°Π΅ΠΌ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ ΠΈ тСкст
text = "ΠŸΡ€ΠΈΠ²Π΅Ρ‚, ΠΌΠΈΡ€!"
text_position = (50, 50)
text_color = (255, 255, 255)  # Π‘Π΅Π»Ρ‹ΠΉ Ρ†Π²Π΅Ρ‚

# ДобавляСм тСкст Π½Π° ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅
draw.text(text_position, text, font=font, fill=text_color)

# БохраняСм ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½ΠΎΠ΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅
image.save("edited_image.jpg")

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ этот ΠΊΠΎΠ΄, Π·Π°ΠΌΠ΅Π½ΠΈΠ² "image.jpg" Π½Π° имя вашСго изобраТСния, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ свой тСкст Π½Π° ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Python.

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π²Ρ‹ Π·Π½Π°Π΅Ρ‚Π΅, ΠΊΠ°ΠΊ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ тСкст Π½Π° ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Python ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Pillow. Π’Π°ΠΌ достаточно ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅, ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ ImageDraw, Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ тСкст Π½Π° ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΈ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Π΅Π³ΠΎ. Π­Ρ‚ΠΎ простой ΠΈ эффСктивный способ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎ.

Π’ΠΈΠ΄Π΅ΠΎ ΠΏΠΎ Ρ‚Π΅ΠΌΠ΅

Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ тСкста Π½Π° ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ python opencv

Как ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ python Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ тСкст Π½Π° ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅

PILLOW PYTHON [ 8 ] | Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ тСкста Π½Π° изобраТСниях

ΠŸΠΎΡ…ΠΎΠΆΠΈΠ΅ ΡΡ‚Π°Ρ‚ΡŒΠΈ:

πŸ” Как ΡΠΊΠ°Ρ‡ΠΈΠ²Π°Ρ‚ΡŒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Π² Python Ρ‡Π΅Ρ€Π΅Π· ΠΊΠΎΠΌΠ°Π½Π΄Π½ΡƒΡŽ строку? 🐍

🎨 Как Π½Π°Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΠΎΠ³Ρ€Π°ΠΌΠΌ Π² ΠŸΠΈΡ‚ΠΎΠ½Π΅: пошаговая инструкция для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…

πŸ”‘πŸ“ Как Π·Π°Ρ€Π΅Π³ΠΈΡΡ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π½Π° ΠŸΠΈΡ‚ΠΎΠ½Π΅: подробная инструкция для Π½ΠΎΠ²ΠΈΡ‡ΠΊΠΎΠ²

πŸ“Έ Как Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ тСкст Π½Π° ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π² Python: простыС шаги для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…

πŸ” Как ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ список символов ΠΈΠ· строки python? 🐍

🐍 Как ΠΏΠΈΡΠ°Ρ‚ΡŒ классы Π² Python: руководство для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…

πŸ”’ Как Π·Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ Π΄Ρ€ΡƒΠ³ΡƒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ Ρ‡Π΅Ρ€Π΅Π· Python: простой ΠΌΠ΅Ρ‚ΠΎΠ΄