Comments (5)
For anyone trying to change the font on today's master; this currently works:
//create an actual ImGui context before setting up the addon
ImGui::CreateContext();
//specify a font to use
&ImGui::GetIO().Fonts->AddFontFromFileTTF(&ofToDataPath("fonts/VeraMono.ttf")[0], 14.f);
gui.setup(); //finally setup the addon ofxImGui::Gui setup;
The trick is to create the native ImGui context before adding a font; otherwise ImGui complains about not being initalized... And if you add the font after setting up the addon, it's already too late.
Note that ofxImGui's setup() (gui.setup()
) does internally call ImGui::CreateContext();
again, but it's not a problem as this second call is ignored.
from ofximgui.
Can you try after commenting out
io->Fonts->ClearTexData();
from ofximgui.
setup()
AddFont()
comment io->Fonts->ClearTexData();
font texture still not allocate, maybe separate a method to create font texture
bool ImGui_ImplGlfwGL3_CreateFontsTexture()
from ofximgui.
Hi Guys,
I'm struggling to use a Unicode font (need it for arrows on buttons)
I have this code in ofApp::setup()
// Load unicode font, has to be done before gui set up - see https://github.com/jvcleave/ofxImGui/issues/19
ImGuiIO * io = &ImGui::GetIO();
ImFontConfig font_config; font_config.OversampleH = 1; font_config.OversampleV = 1; font_config.PixelSnapH = 1;
// load Lucinda SansRegular Unicode font - file name L_10646.TTF
unicodeFont = io->Fonts->AddFontFromFileTTF("C:\\Windows\\Fonts\\L_10646.ttf", 16.0f, NULL, io->Fonts->GetGlyphRangesDefault());
unsigned char * pixels;
int width, height;
io->Fonts->GetTexDataAsRGBA32(&pixels, &width, &height);
gui.setup();
ImGui::GetIO().MouseDrawCursor = false;
But I can't work out how to swap between the default font and my unicode one.
I just always get the unicode one, and it doesn't look very crisp.
Then even when using the Unicode font I just get a question mark in the button from this
ImGui::Button(u8"\u2190"); // Unicode left arrow
Any advice greatly appreciated
Thanks
Richard
from ofximgui.
I figured it out eventually, my code is now
// Load unicode font, has to be done before gui set up - see https://github.com/jvcleave/ofxImGui/issues/19
io = &ImGui::GetIO();
// set default font in font atlas
ImFont* font0 = io->Fonts->AddFontDefault();
// load Lucinda SansRegular Unicode font - file name L_10646.TTF
ImFontConfig font_config; font_config.OversampleH = 1; font_config.OversampleV = 1; font_config.PixelSnapH = 1;
static const ImWchar glyphRanges[] = { 0x0020, 0x266F, 0, }; // Everything
unicodeFont = io->Fonts->AddFontFromFileTTF("C:\\Windows\\Fonts\\L_10646.ttf", 18.0f, &font_config, &glyphRanges[0]);
unsigned char* pixels;
int width, height;
io->Fonts->GetTexDataAsAlpha8(&pixels, &width, &height);
from ofximgui.
Related Issues (20)
- No gui on Android HOT 2
- UTF-8 rendering fails with garbled characters. I need your help! Thank you! HOT 2
- input latin characters HOT 2
- ofxImGuiLoggerChannel.h HOT 2
- Merging forks : ImGuiContext and more HOT 8
- EGl window rk boards HOT 10
- ofxImGui upgrade HOT 8
- arb textures HOT 1
- imgui_stdlib.h and imgui_stdlib.cpp should be included in project files HOT 1
- Closing a window within a window? HOT 3
- imgui_impl_glfw_context_support.h missing from develop branch.
- develop brach broken HOT 5
- ofxImGui::Gui::exit() released context, can't Gui::setup() again HOT 2
- OF 0.12 compatibility HOT 1
- Drawing ofFbo's texture as ImGui::Image(); HOT 3
- constexpr float ofColorScale: Syntax error in input HOT 1
- Example Demo will not compile Ubuntu version 24.04 and Openframeworks version 0.12.0 both fresh install HOT 2
- it's possible to use more than one instance of ofxImGui (inside classes) in the same ofApp? HOT 3
- Unknown type name 'ofVec2f'
- I make oF window borderless(not fullscreen),the screen display has an offset(mouse also)
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from ofximgui.