精易论坛

标题: [IMGUI]易语言imgui入门第三课,动态改变文本的字体,大小... [打印本页]

作者: xiaolin666    时间: 2024-11-8 17:13
标题: [IMGUI]易语言imgui入门第三课,动态改变文本的字体,大小...
本帖最后由 xiaolin666 于 2024-11-8 22:37 编辑

教学模块为论坛的1.77模块,无模块守护,还担心的可以源码重新编译一个。指路:【新提醒】ImGui 1.77最新最全库函数封装,UI库的又一新选择!_精易论坛.版本 2
' 这节课我们主要讲如何实现多字体加载以及如何动态改变字体纹理,调整字体颜色,字号大小
' 顺带学习一下箭头按钮的四个常量

' #ImGuiDir_Left   左箭头
' #IMGUIDIR_RIGHT   右箭头
' #IMGUIDIR_UP     上箭头
' #IMGUIDIR_DOWN   下箭头
'四个方向的箭头 一会会在彩色文本区域用它

源码中将会讲到如何封装一个初始化前加载更多字体的回调

三种加载字体的方法
1.系统自带路径
2.某个特殊路径
3.资源常量中字节集加载,又称内存加载字体

并且解决原版模块部分字体问号的问题
其实加载是有一个full的函数,只是全部加载会容易卡,所以不太常用,模块的dll命令中是存在的,我直接封装了出来,调用加载全部字形即可

' 加载字体
' 字体.Init ()

' 从某个路径加载字体
' font.AddFontFromFileTTF (“F:\Desktop\msyh.ttf”, 16, , font.GetGlyphRangesChineseFull ())


' 从内存加载字体
' 这内存加载,虽然模块没有封装,但是dll中存在,所以我尝试封装了,但部分字体可能会崩溃,需要自己修改修改
' font.AddFontFromMemoryTTF( #msyh.ttf, #msyh.ttf, 14, , font.GetGlyphRangesChineseFull ())


' 建议使用:
' 从文件加载现有的字体
' font.AddFontFromFileTTF (“C:\Windows\Fonts\msyh.ttc”, 16, , font.GetGlyphRangesDefault ()))
' 默认的字形范围,也是最常用的一个,但它字形加载不完整,有些字会变问号



' 不建议使用:

' font.AddFontFromFileTTF (“C:\Windows\Fonts\msyh.ttc”, 16, ,font.GetGlyphRangesChineseFull ())虽然模块没有封装,但是dll中存在,所以我尝试封装了
' 它加载全部中文 启动的时候会卡一会,不建议使用因为 msyh 中文太多了


' ————————————————————————————————————————————————————————————————————————————
' 个别生僻字的话可以用如下方法特定加载,减少内存消耗
' glyph.AddChar (38062)  ' 钮
' glyph.AddChar (31659)  ' 箫
' glyph.AddChar (32533)  ' 缕
' glyph.AddChar (34022)  ' 阑
' glyph.AddChar (38417)  ' 阑
' glyph.AddChar (29642)  ' 珊
' glyph.AddChar (36753)  ' 辑
' glyph.AddChar (20989)  ' 函
' glyph.AddChar (23884)  ' 嵌
' glyph.AddChar (23572)  ' 尔


' ——————————————————————————————
' imgui在修改属性中有push(修改)和pop(还原)两个函数
' 本期我们将会借着字体的机会初步认识push和pop,这对以后组件的圆角,字体,颜色修改是必须的
https://wwus.lanzouj.com/ihfip2el6p9i    这是少的dll的地址  ,也可以去模块源地址下载此dll,上面有指路跳转





3.IMGUI动态改变大小,颜色,字体,初步认识push与pop.zip

1.47 MB, 下载次数: 33, 下载积分: 精币 -2 枚


作者: kedoubobo    时间: 2024-11-8 17:19

作者: xiaolin666    时间: 2024-11-8 18:17
kedoubobo 发表于 2024-11-8 17:19


作者: 龙傲天f    时间: 2024-11-8 18:34
        新技能已get√
作者: angelaleeahngi    时间: 2024-11-8 19:17
         新技能已get√
作者: 亿万    时间: 2024-11-8 20:05
感谢分享,很给力!~
作者: 784326742    时间: 2024-11-8 22:10
给我金币
作者: 784326742    时间: 2024-11-8 22:12
imgui好是好,但是有些系统是找不到DLL的


作者: xiaolin666    时间: 2024-11-8 22:35
784326742 发表于 2024-11-8 22:12
imgui好是好,但是有些系统是找不到DLL的

https://wwus.lanzouj.com/ihfip2el6p9i
这是缺少的DLL下载地址,或者我指路的模块源地址也有这个dll

作者: zhangbiao    时间: 2024-11-8 22:53
感谢分享
作者: year1970    时间: 2024-11-9 09:34
感谢分享
作者: pnf    时间: 2024-11-9 09:58
        支持开源~!感谢分享
作者: renhe2018    时间: 2024-11-9 10:52
看上去非常不错。
作者: 784326742    时间: 2024-11-9 16:06
xiaolin666 发表于 2024-11-8 22:35
https://wwus.lanzouj.com/ihfip2el6p9i
这是缺少的DLL下载地址,或者我指路的模块源地址也有这个dll
...

来晚啦...文件取消分享了
我知道,你打包的文件都附带这个DLL的,但是就是找不到

作者: xiaolin666    时间: 2024-11-9 19:17
784326742 发表于 2024-11-9 16:06
来晚啦...文件取消分享了
我知道,你打包的文件都附带这个DLL的,但是就是找不到
...

奇怪,这个原因就不知道了,我这虚拟机真机都是正常的,也没见过其他同样出现提示的,你可以去模块作者那看看有没有同样问题,他们是怎么解决的

作者: 396384183    时间: 2024-11-9 19:58

感谢分享
感谢分享
作者: please    时间: 2024-11-10 09:38
感谢分享,支持开源!!!
作者: 熊不熊    时间: 2024-12-4 04:28
感谢分享,很给力!~
作者: a2882077    时间: 2025-2-25 17:16
xiaolin666 发表于 2024-11-9 19:17
奇怪,这个原因就不知道了,我这虚拟机真机都是正常的,也没见过其他同样出现提示的,你可以去模块作者那 ...

应该是win11的问题,用原作者的demo也是同样的问题
作者: heishou    时间: 2025-5-29 04:28
感谢大佬!!
作者: heishou    时间: 2025-5-29 04:28
支持开源!!




欢迎光临 精易论坛 (https://125.confly.eu.org/) Powered by Discuz! X3.4