Python Script เพื่อสร้างแบบอักษรใหม่สำหรับ Waveshare Epaper / E-ink [โมดูล EPS32]
ฉันมีความสุขมากกับจอแสดงผล e-ink ของฉันจาก Waveshare แต่ห้องสมุดของพวกเขามีเพียงประเภทแบบอักษรพื้นฐานและเพียง 5 ตัวอักษร (Font8, Font12, Font16, Font20 และ Font24) น่าเสียดายที่ จำกัด มาก :(
สคริปต์ Python นี้ได้รับแรงบันดาลใจจาก Waveshare Blogpost สิ่งนี้ แต่พวกเขาไม่ได้ให้รหัสใด ๆ ที่จะใช้ ...
ในทางกลับกัน Font2Bytes จาก Dominik Kapusta นั้นมีอยู่ แต่ต้องใช้คอมไพเลอร์ C ++
นี่คือเวอร์ชันของฉันที่ทำใน Python ในขณะนี้มันจะสร้าง ASCII Caracters แต่คุณสามารถใช้แบบอักษรใด ๆ และระบุขนาดใดก็ได้ (เพียงตรวจสอบให้แน่ใจว่ามันจะพอดีกับการแสดงผล epaper ของคุณ)
วางแบบอักษรใด ๆ ที่คุณต้องการใช้ (.tff) ภายในโฟลเดอร์./fonts ภายใน font2bytes.py
ระบุชื่อใหม่สำหรับแบบอักษรเพื่อสร้าง
ระบุชื่อตัวอักษรที่คุณต้องการใช้ (ค่าเริ่มต้นคือ Roboto-regular)
ระบุความสูงและความกว้างของแบบอักษรใหม่
เรียกใช้สคริปต์ Python
สคริปต์ Python จะสร้างไฟล์. CPP ใหม่ภายในโฟลเดอร์./OUTPUT ด้วยชื่อที่ต้องการ
ภายในโฟลเดอร์แหล่งที่มาของ Waveshare Library (Arduino Libraries esp32-waveshare-epd src)
เพิ่มไฟล์ฟอนต์. cpp ใหม่
เปิดตัวอักษรและ
เพิ่มบรรทัด "extern" ใหม่ด้วยชื่อของแบบอักษรใหม่
เช่น: Extern SFONT FONTBOLD40;
[ไม่บังคับ] ตรวจสอบให้แน่ใจว่า MAX_HEIGHT_FONT และ MAX_WIDTH_FONT ที่กำหนดไว้นั้นเท่ากันหรือเล็กกว่าขนาดตัวอักษรใหม่ อัปเดตค่าหากจำเป็น
ใช้แบบอักษรใหม่ในสคริปต์ของคุณและสนุก!
เช่น paint_drawstring_en (5, 0, "Waveshare Electronics", & Fontbold40, ดำ, ขาว);
ภายในโฟลเดอร์./OUTPUT มีไฟล์. CPP สองไฟล์ที่สามารถใช้งานได้โดยไม่ต้องเรียกใช้รหัส Oython เพียงทำตามคำแนะนำจากขั้นตอนที่ 6
Thehexstyle
LGPL v3.0 ดูรายละเอียดใบอนุญาต