diff --git a/plugins/fonts/source/font_loader.cpp b/plugins/fonts/source/font_loader.cpp index a18be76e9..512418963 100644 --- a/plugins/fonts/source/font_loader.cpp +++ b/plugins/fonts/source/font_loader.cpp @@ -24,6 +24,7 @@ namespace hex::fonts::loader { ImFontConfig config; config.MergeMode = false; config.SizePixels = settings.getFontSize(); + config.Flags |= ImFontFlags_NoLoadError; std::memcpy(config.Name, name.get().c_str(), std::min(name.get().size(), sizeof(config.Name) - 1)); diff --git a/plugins/fonts/source/font_settings.cpp b/plugins/fonts/source/font_settings.cpp index c925240e1..90cac88ec 100644 --- a/plugins/fonts/source/font_settings.cpp +++ b/plugins/fonts/source/font_settings.cpp @@ -25,21 +25,24 @@ namespace hex::fonts { return true; } + ImFontConfig config = {}; + config.FontDataOwnedByAtlas = true; + config.Flags |= ImFontFlags_NoLoadError; + auto atlas = ImGui::GetIO().Fonts; auto it = s_previewFonts.find(fontPath); if (it == s_previewFonts.end()) { ImFont *font = nullptr; if (fontPath == PixelPerfectFontName) { - font = atlas->AddFontDefault(); + font = atlas->AddFontDefault(&config); } else if (fontPath == SmoothFontName || fontPath.empty()) { static auto jetbrainsFont = romfs::get("fonts/JetBrainsMono.ttf"); - ImFontConfig config = {}; config.FontDataOwnedByAtlas = false; font = atlas->AddFontFromMemoryTTF(const_cast(jetbrainsFont.data()), jetbrainsFont.size(), 0.0F, &config); } else { - font = atlas->AddFontFromFileTTF(wolv::util::toUTF8String(fontPath).c_str()); + font = atlas->AddFontFromFileTTF(wolv::util::toUTF8String(fontPath).c_str(), 0.0F, &config); } it = s_previewFonts.emplace(fontPath, font).first;