AdafruitGFXFontTool
ผู้สร้างฟอนต์แบบกำหนดเองสำหรับไมโครคอนโทรลเลอร์ที่ใช้รูปแบบฟอนต์ Adafruit GFX

วิธีติดตั้งหรือสร้าง และรันโปรเจ็กต์
ข้อกำหนดรันไทม์:
- คอมพิวเตอร์ที่ใช้ Windows (เดสก์ท็อป/แล็ปท็อป)
- .NET Framework 4.8
ข้อกำหนดในการสร้าง:
- คอมพิวเตอร์ที่ใช้ Windows (เดสก์ท็อป/แล็ปท็อป)
- วิชวลสตูดิโอ 2022
- .NET Framework 4.8
การดาวน์โหลดและเรียกใช้โครงการ
- ดาวน์โหลดโปรเจ็กต์ที่สร้างไว้ล่วงหน้าและพร้อมที่จะรันที่ AdafruitGFXFontTool -Releases
- แตก ไฟล์ Release.zip
- เปิดโฟลเดอร์ Release และเรียกใช้ AdafruitGFXFont.exe
การสร้างและดำเนินโครงการ
- ดาวน์โหลดและแยกโฟลเดอร์ซอร์สโค้ด
- เปิด AdafruitGFXFont/AdafruitGFXFont.csproj ใน Visual Studio 2022
- ใน Visual Studio เลือก Build->Build Solution
- โปรเจ็กต์จะถูกสร้างขึ้นที่ AdafruitGFXFontbinDebug หรือ AdafruitGFXFontbinRelease (Debug โดยค่าเริ่มต้น)
- ไฟล์ปฏิบัติการที่สร้างขึ้นจะเรียกว่า AdafruitGFXFont.exe
การใช้โครงการ

คุณมีสองทางเลือกเมื่อเริ่มต้นโครงการ การสร้างแบบอักษรที่คุณกำหนดเองด้วย การตั้งค่าแบบอักษร หรือการนำเข้าแบบอักษรด้วย การนำเข้าแบบอักษร
เมื่อนำเข้าแบบอักษรที่กำหนดเอง คุณสมบัติแบบอักษรทั้งหมด: ช่วงอักขระ ชื่อ และความสูง จะถูกนำเข้าโดยอัตโนมัติเช่นกัน

เมื่อสร้างแบบอักษรใหม่ คุณจะต้องเลือกตัวแปรเหล่านี้ด้วยตนเอง
- ชื่อแบบอักษรสามารถเป็นชื่อตัวแปรที่ถูกต้องในกฎ C/C++ สำหรับการตั้งชื่อตัวแปร
- ความสูงของแบบอักษรต้องเป็นตัวเลข (0-255) เป็น uint8_t หมายเหตุ: ความสูงของแบบอักษรใช้เพื่อกำหนดระยะห่างระหว่างบรรทัดใหม่เท่านั้น (aka. yAdvance)
- ช่วงต่ำสุดและสูงสุดจะกำหนดช่วงของอักขระ UTF-8 ที่จะรวมไว้ในแบบอักษร ช่วงสามารถป้อนเป็นตัวเลข (0-65535) หรือเลขฐานสิบหก (0x00-0xfFF) เป็น uint16_t
- เมื่อป้อนตัวแปรทั้งหมดตามที่ต้องการแล้ว ให้กด ส่ง

ใต้ป้ายกำกับ "เลือกถ่าน" คือเมนูแบบเลื่อนลงที่มีอักขระทั้งหมดในช่วงแบบอักษร โดยแสดงเป็นรูปแบบ (int / hex = char) เลือกหนึ่งรายการเพื่อเริ่มต้น
หลังจากเลือกตัวละครแล้ว คุณสามารถเปลี่ยนคุณสมบัติของตัวละครได้:
- ความกว้าง: ความกว้าง (ขนาดพิกัด x) ของตัวละครของคุณ - ตัวเลข (0-255) เป็น uint8_t
- ความสูง: ความสูง (ขนาดพิกัด y) ของตัวละครของคุณ - ตัวเลข (0-255) เป็น uint8_t
- xAdvance: จำนวนพิกเซลที่จะเลื่อนเคอร์เซอร์ (พิกัด x) หลังจากวาดอักขระ - ตัวเลข (0-255) เป็น uint8_t
- xOffset: จำนวนการเคลื่อนไหวที่ใช้กับเคอร์เซอร์ (พิกัด x) ก่อนวาดอักขระ (ไม่ส่งผลต่อเคอร์เซอร์หลังการวาด) - ตัวเลข (-128-127) เป็น int8_t
- yOffset: จำนวนการเคลื่อนไหวที่ใช้กับเคอร์เซอร์ (พิกัด u) ก่อนวาดอักขระ (ไม่ส่งผลต่อเคอร์เซอร์หลังการวาด) - ตัวเลข (-128-127) เป็น int8_t หลังจากเลือกตัวแปรที่ต้องการแล้วให้คลิก ใช้ตัวเลือกอักขระใหม่
เมื่อใช้คุณสมบัติอักขระใหม่ อักขระที่วาดไว้ก่อนหน้านี้จะถูกลบออก ซึ่งจะเหลือแถวสี่เหลี่ยมสีขาวไว้ที่จุดขวาสุดของหน้าจอ
คลิกที่สี่เหลี่ยมเพื่อเริ่มวาดภาพ! เมื่อคลิก สี่เหลี่ยมจะสลับจากสีขาวเป็นสีดำ โดยที่สีดำคือพิกเซลที่จะวาด
หมายเหตุ: สี่เหลี่ยมถูกสร้างขึ้นจากอาร์เรย์ขององค์ประกอบ C# PictureBox ซึ่งไม่มีประสิทธิภาพอย่างมากสำหรับงานนี้ แต่ง่ายต่อการแก้ไขและพัฒนา ซึ่งหมายความว่าจะมีความล่าช้าในการคลิกช่องเดียวกันหลายครั้งได้เร็วแค่ไหน
เมื่อคุณวาดภาพอักขระที่ต้องการเสร็จแล้ว ให้คลิก สร้างแบบอักษร แล้วเลือกโฟลเดอร์
สิ่งนี้จะส่งออกไฟล์เดียวภายใต้โฟลเดอร์ชื่อ "{fontname}GFXFONT.h"
เมื่อไฟล์ส่วนหัวนี้ถูกนำเข้าไปยังโปรเจ็กต์ องค์ประกอบ GFXfont สามารถเรียกว่าชื่อแบบอักษรที่ตั้งไว้ที่จุดเริ่มต้น
ทรัพยากร
- ไลบรารีกราฟิก Adafruit GFX
- ไลบรารี LED Matrix ที่ฉันใช้สำหรับแบบอักษรนี้: ESP32-HUB75-MatrixPanel