Pillow library ฟังก์ชั่น ImageDraw() ฟังก์ชั่นสำหรับการเพิ่มตัวอักษรเข้าไปในภาพ

แชร์ความรู้ภาษา Python ไพทอน การเขียนโปรแกรมภาษาไพทอน

Moderator: mindphp, ผู้ดูแลกระดาน

benzas00123
PHP Super Member
PHP Super Member
โพสต์: 244
ลงทะเบียนเมื่อ: 06/01/2020 9:58 am

Pillow library ฟังก์ชั่น ImageDraw() ฟังก์ชั่นสำหรับการเพิ่มตัวอักษรเข้าไปในภาพ

โพสต์ที่ยังไม่ได้อ่าน โดย benzas00123 »

วันนี้เราจะมาสอนวิธีการเพิ่มตัวอักษรเข้าไปในภาพ โดยหลักๆ เลยเราจำเป็นจะต้องเตรียมไฟล์ รูปแบบตัวอักษรเข้าไปไว้ใน folder ของ project ก่อน ส่วนวิธีเขียนจะมีขั้นตอนดังนี้

1.import module

โค้ด: เลือกทั้งหมด

from PIL import Image , ImageDraw , ImageFont
2.เปิดรูปที่เราต้องการจะเพิ่มตัวอักษร

โค้ด: เลือกทั้งหมด

image = Image.open("static/images/maxresdefault.jpg")
3. สร้างตัวแปรเพื่อเก็บรูปแบบและขนาดของตัวอักษรโดยเราจะทำการเลือกจากไฟล์ font ที่เรานำมาเตรียมไว้

โค้ด: เลือกทั้งหมด

font_type = ImageFont.truetype('Salmon White - Personal Use.otf' , 50)
4. สร้างตัวแปรเพื่อเก็บฟังก์ชั่น draw

โค้ด: เลือกทั้งหมด

draw = ImageDraw.Draw(image)
5.กำหนด ตำแหน่ง , ข้อความ , สี แล้วก็ใส่ตัวแปร font ที่เราทำการ สร้างเอาไว้ ตามลำดับ

โค้ด: เลือกทั้งหมด

draw.text(xy = (200,200),text="Test text" , fill=(255,60,0),font=font_type)
ผลลัพธ์

ภาพต้นแบบ
Python Knowledge-1.png
Python Knowledge-1.png (452.54 KiB) Viewed 912 times
ภาพที่ได้ทำการเพิ่มตัวอักษรแล้ว
Python Knowledge-2.png
Python Knowledge-2.png (305.43 KiB) Viewed 912 times
เป็นยังไงบ้างครับ หวังว่าคงจะพอมีประโยชน์กับเพื่อนๆที่กำลังศึกษาเจ้าตัว module pillow อยู่เพื่อนำไปใช้ในการทำโปรเจคนะครับ

ศึกษาเพิ่มเติม
แชร์ความรู้เกี่ยวกับ python
Pillow library ฟังก์ชั่น Filters สำหรับการปรับ Filters ของภาพให้มีลูกเล่นมากขึ้น
วีดีโอสอนเขียน python
บทความเทคนิคเกี่ยวกับ python


อ้างอิง
https://pillow.readthedocs.io/en/3.1.x/reference/ImageDraw.html
https://stackoverflow.com/questions/41405632/draw-a-rectangle-and-a-text-in-it-using-pil/41406147
https://www.geeksforgeeks.org/python-pil-imagedraw-draw-text/
  • Similar Topics
    ตอบกลับ
    แสดง
    โพสต์ล่าสุด

ผู้ใช้งานขณะนี้

สมาชิกกำลังดูบอร์ดนี้: ไม่มีสมาชิกใหม่ และบุคลทั่วไป 41