Advertisement
GamingLVScripts

ImGuiImpl

Jun 10th, 2025 (edited)
524
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.94 KB | None | 0 0
  1.     // Fonts
  2.     public static ImFont inter17;
  3.     public static ImFont inter30;
  4.     public static ImFont sansation17;
  5.     public static ImFont comfortaa17;
  6.     public static ImFont arial17;
  7.  
  8. public static void create(final long handle) throws IOException {
  9.         ImGui.createContext();
  10.         ImPlot.createContext();
  11.  
  12.         final ImGuiIO data = ImGui.getIO();
  13.         data.setIniFilename(Fagware.MOD_ID + File.separator + Fagware.MOD_ID + ".ini");
  14.         data.setFontGlobalScale(1F);
  15.  
  16.         final ImFontAtlas fonts = data.getFonts();
  17.  
  18.         // Shared glyph range (basic Latin + numbers)
  19.         short[] defaultRanges = fonts.getGlyphRangesDefault();
  20.  
  21.         List<ImFont> interGeneratedFonts = new ArrayList<>();
  22.         for (int i = 21; i < 50; i++) {
  23.             ImFontConfig interConfig = new ImFontConfig();
  24.             interConfig.setGlyphRanges(defaultRanges);
  25.             interConfig.setName("Inter " + i + "px");
  26.             ImFont inter = fonts.addFontFromMemoryTTF(
  27.                     IOUtils.toByteArray(Objects.requireNonNull(ImGuiImpl.class.getResourceAsStream("/assets/" + Fagware.MOD_ID + "/fonts/Inter28pt_Regular.ttf"))),
  28.                     i,
  29.                     interConfig
  30.             );
  31.             ImGuiFontManager.register("Inter", inter, i);
  32.             interGeneratedFonts.add(inter);
  33.             interConfig.destroy();
  34.         }
  35.  
  36.         List<ImFont> sansationGeneratedFonts = new ArrayList<>();
  37.         for (int i = 21; i < 50; i++) {
  38.             ImFontConfig sansationCfg = new ImFontConfig();
  39.             sansationCfg.setGlyphRanges(defaultRanges);
  40.             sansationCfg.setName("Sansation " + i + "px");
  41.             ImFont sansation = fonts.addFontFromMemoryTTF(
  42.                     IOUtils.toByteArray(Objects.requireNonNull(ImGuiImpl.class.getResourceAsStream("/assets/" + Fagware.MOD_ID + "/fonts/Sansation_Regular.ttf"))),
  43.                     i,
  44.                     sansationCfg
  45.             );
  46.             ImGuiFontManager.register("Sansation", sansation, i);
  47.             sansationGeneratedFonts.add(sansation);
  48.             sansationCfg.destroy();
  49.         }
  50.  
  51.         List<ImFont> comfortaaGeneratedFonts = new ArrayList<>();
  52.         for (int i = 21; i < 50; i++) {
  53.             ImFontConfig comfortaaCfg = new ImFontConfig();
  54.             comfortaaCfg.setGlyphRanges(defaultRanges);
  55.             comfortaaCfg.setName("Comfortaa " + i + "px");
  56.             ImFont comfortaa = fonts.addFontFromMemoryTTF(
  57.                     IOUtils.toByteArray(Objects.requireNonNull(ImGuiImpl.class.getResourceAsStream("/assets/" + Fagware.MOD_ID + "/fonts/Comfortaa_Regular.ttf"))),
  58.                     i,
  59.                     comfortaaCfg
  60.             );
  61.             ImGuiFontManager.register("Comfortaa", comfortaa, i);
  62.             comfortaaGeneratedFonts.add(comfortaa);
  63.             comfortaaCfg.destroy();
  64.         }
  65.  
  66.         List<ImFont> arialGeneratedFonts = new ArrayList<>();
  67.         for (int i = 21; i < 50; i++) {
  68.             ImFontConfig arialCfg = new ImFontConfig();
  69.             arialCfg.setGlyphRanges(defaultRanges);
  70.             arialCfg.setName("Arial " + i + "px");
  71.             ImFont arial = fonts.addFontFromMemoryTTF(
  72.                     IOUtils.toByteArray(Objects.requireNonNull(ImGuiImpl.class.getResourceAsStream("/assets/" + Fagware.MOD_ID + "/fonts/Arial_Regular.ttf"))),
  73.                     i,
  74.                     arialCfg
  75.             );
  76.             ImGuiFontManager.register("Arial", arial, i);
  77.             arialGeneratedFonts.add(arial);
  78.             arialCfg.destroy();
  79.         }
  80.  
  81.         fonts.build();
  82.  
  83.         inter17 = interGeneratedFonts.get(0);
  84.         inter30 = interGeneratedFonts.get(9);
  85.         sansation17 = sansationGeneratedFonts.get(0);
  86.         comfortaa17 = comfortaaGeneratedFonts.get(0);
  87.         arial17 = arialGeneratedFonts.get(0);
  88.  
  89.         data.setConfigFlags(ImGuiConfigFlags.DockingEnable);
  90.  
  91.         imGuiImplGlfw.init(handle, true);
  92.         imGuiImplGl3.init();
  93.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement