สนับสนุนการพัฒนา IconFontCppHeaders ผ่านผู้สนับสนุน GitHub หรือ Patreon
https://github.com/juliettef/IconFontCppHeaders
ส่วนหัว C และ C++, คลาส C# และ Python, ไฟล์ Rust และแพ็คเกจ Go สำหรับแบบอักษรไอคอน Font Awesome, Fork Awesome, การออกแบบวัสดุของ Google, ไอคอนการออกแบบวัสดุของ Pictogrammers, ไอคอนเกม Kenney, Fontaudio, Codicons และ Lucide
ชุดของไฟล์ส่วนหัวและคลาสสำหรับการใช้แบบอักษรของไอคอนใน C, C++, C#, Python, Rust และ Go พร้อมด้วยตัวสร้าง Python ที่ใช้ในการสร้างไฟล์
แต่ละส่วนหัวประกอบด้วยการกำหนดสำหรับหนึ่งแบบอักษร โดยแต่ละจุดรหัสไอคอนกำหนดเป็น ICON_*
พร้อมด้วยจุดรหัส ขั้นต่ำ สูงสุด และ สูงสุด 16 บิต สำหรับวัตถุประสงค์ในการโหลดแบบอักษร min ไม่รวมจุดรหัสอักขระ ASCII สูงสุด 16 บิตใช้สำหรับไลบรารีที่รองรับเฉพาะจุดโค้ด 16 บิต เช่น Dear ImGui
นอกจากนี้สคริปต์ python ยังสามารถใช้เพื่อแปลงไฟล์ฟอนต์ ttf เป็นส่วนหัว C และ C++ ไฟล์ฟอนต์ไอคอน ttf แต่ละไฟล์จะถูกแปลงเป็นไฟล์ส่วนหัว C และ C++ ที่มีอาร์เรย์ไบต์เดียว หากต้องการเปิดใช้งานการแปลง ให้รันสคริปต์ GenerateIconFontCppHeaders.py
ด้วย ttf2headerC = True
Font Awesome 5 และ 6 แบ่งสไตล์ของไอคอนออกเป็นไฟล์ฟอนต์ที่แตกต่างกัน โดยมีจุดโค้ดที่เหมือนกันสำหรับสไตล์ แบบเบา แบบปกติ และ แบบทึบ และชุดโค้ดพอยต์ที่แตกต่างกันสำหรับ แบรนด์ เราได้รวมแบรนด์ต่างๆ ไว้ในไฟล์ส่วนหัวแยกต่างหาก
ดาวน์โหลดแพ็คเกจ Font Awesome Pro Web จาก fontawesome.com หากต้องการสร้างส่วนหัว ให้วาง icons.yml
ในไดเรกทอรีเดียวกันกับ GenerateIconFontCppHeaders.py
ก่อนที่จะเรียกใช้สคริปต์ ไฟล์ icons.yml
อยู่ภายใต้ ..fontawesome-pro-nnn-webmetadataicons.yml
โดยที่ nnn
คือหมายเลขเวอร์ชัน
ไฟล์ไอคอน:
..fontawesome-pro-nnn-webmetadataicons.yml
..fontawesome-pro-nnn-webwebfontsfa-brands-400.ttf
..fontawesome-pro-nnn-webwebfontsfa-light-300.ttf
..fontawesome-pro-nnn-webwebfontsfa-regular-400.ttf
..fontawesome-pro-nnn-webwebfontsfa-solid-900.ttf
การใช้ Dear ImGui เป็นไลบรารี UI ตัวอย่าง:
# include " IconsFontAwesome5.h "
ImGuiIO& io = ImGui::GetIO();
io.Fonts-> AddFontDefault ();
float baseFontSize = 13 . 0f ; // 13.0f is the size of the default font. Change to the font size you use.
float iconFontSize = baseFontSize * 2 . 0f / 3 . 0f ; // FontAwesome fonts need to have their sizes reduced by 2.0f/3.0f in order to align correctly
// merge in icons from Font Awesome
static const ImWchar icons_ranges[] = { ICON_MIN_FA, ICON_MAX_16_FA, 0 };
ImFontConfig icons_config;
icons_config.MergeMode = true ;
icons_config.PixelSnapH = true ;
icons_config.GlyphMinAdvanceX = iconFontSize;
io.Fonts-> AddFontFromFileTTF ( FONT_ICON_FILE_NAME_FAS, iconFontSize, &icons_config, icons_ranges );
// use FONT_ICON_FILE_NAME_FAR if you want regular instead of solid
// in an imgui window somewhere...
ImGui::Text ( ICON_FA_PAINT_BRUSH " Paint " ); // use string literal concatenation
// outputs a paint brush icon and 'Paint' as a string.
โปรแกรมแก้ไข Voxel และเกม FPS อิสระ 6 องศาพร้อมสภาพแวดล้อมที่แก้ไขได้ UI ของตัวแก้ไข voxel ใช้ Dear ImGui พร้อมแบบอักษรไอคอน Font Awesome
www.avoyd.com
ไลบรารีการเรนเดอร์ข้ามแพลตฟอร์ม
bkaradzic.github.io/bgfx/ภาพรวม
github.com/bkaradzic/bgfx
เรียลไทม์ 3D ดึงดูดผู้สอดแนมแปลก ๆ
www.michelemorrone.eu/glchaosp
github.com/BrutPitt/glChAoS.P
เฟรมเวิร์กปลั๊กอินเสียง C++ ข้ามแพลตฟอร์ม
iplug2.github.io
github.com/iplug2/iplug2
เอ็นจิ้นเกมโอเพ่นซอร์ส 3D C++
github.com/nem0/LumixEngine
เรียลไทม์ ความละเอียดระดับนาโนวินาที ตัวสร้างโปรไฟล์เฟรมระยะไกลสำหรับเกมและแอปพลิเคชันอื่นๆ
bitbucket.org/wolfpld/tracy
การจำลองฮาร์ดแวร์ระดับทรานซิสเตอร์ 6502
flooh.github.io/visual6502remix
github.com/floooh/v6502r
สร้างชุดย่อยแบบอักษร
github.com/aiekick/ImGuiFontStudio
ขอขอบคุณทุกคนที่มีส่วนร่วมใน IconFontCppHeaders จนถึงตอนนี้ เพื่อให้สิ่งต่าง ๆ ง่ายขึ้น โปรดคำนึงถึงสิ่งต่อไปนี้:
การพัฒนา - Juliette Foucaut - @juliettef
ข้อกำหนด - Doug Binks - @dougbinks
ไม่มีการใช้ภาษาและการปรับโครงสร้างใหม่ - Leonard Ritter - @paniq
คำแนะนำในการเพิ่มการกำหนดสำหรับชื่อไฟล์ ttf - Sean Barrett - @nothings
การใช้งาน Font Awesome 5 เริ่มต้น - Codecat - @codecat
คำแนะนำในการเพิ่ม Fork Awesome - Julien Deswaef - @xuv
คำแนะนำในการเพิ่ม Ionicons - Omar Cornut - @ocornut
การใช้ภาษา C# - Rokas Kupstys - @rokups
คำแนะนำในการเพิ่มไอคอนการออกแบบวัสดุ - Gustav Madeso - @madeso
การใช้งาน Fontaudio - Oli Larkin - @olilarkin
การใช้งานการแปลงส่วนหัว ttf เป็น C และ C ++ เริ่มต้น - Charles Mailly - @Caerind
การใช้ภาษา Python - Hang Yu - @ yhyu13
ไปใช้งานภาษา - Matt Pharr - @mpp
การใช้ Codicons - Robert Ryan - @ rtryan98
การใช้ภาษาสนิม - Gaeel Bradshaw-Rodriguez - @Bradshaw
การใช้ไอคอน Pictogrammers Material Design - Bobby Anguelov - @BobbyAnguelov
การใช้ไอคอน Lucide - ผู้สนับสนุน Lucide - @lucide-icons