Исходник Гайд [mimgui] Jam Icons - небольшой аналог fAwesome

lorgon

Известный
Автор темы
657
266
Frame 11.png

Jam Icons - это набор значков SVG, предназначенных для веб-проектов, иллюстраций, печатных проектов и т.д.
Я же сделал из них шрифт и переделал библиотеку ФИПа, что-бы ими можно было нормально пользоваться.

Ссылки​

Оригинальный сайт: сайт
Репозитория на GitHub: тут

Использование​

  • Выбор подходящего значка
Что-бы выбрать подходящую иконку, Вам нужно перейти на оригинальный сайт и с помощью поиска найти её.​
После того как Вы нашли, вам стоит навестиcь на неё и скопировать название.​
Group 29.png
  1. Если название содержит символ "-", то Вам стоит заменить его на "_".
  2. Если Вы хотите вызвать значок как jam.WORLD, то стоит перевести все буквы в верхний регистр.

  • Общий пример
Общий пример:
local jamin, jamax = jam.min_range,  jam.max_range
local apple = jam 'apple'
local music = jam(0xeb4d)
local world = jam.WORLD

local font_data = jam.get_font_data_base85()

  • Готовый скрипт
Lua:
local imgui = require 'mimgui'
local ffi = require 'ffi'
local new = imgui.new

local jam = require 'jamicons' -- Подключаем нужную библиотеку
local font = {}

function main()
    wait(-1)
end

local ui = imgui.OnFrame( -- Рендерим окно
    function() return true end,
    function(player)
        imgui.Begin('Jam ICONS')
        imgui.Text('EXAMPLES:\n')
        imgui.PushFont(font['jam']) -- Применяем шрифт только к определённому тексту

        imgui.Text(jam.WORLD)
        imgui.SameLine()
        imgui.Text(jam['FLAME'])
        imgui.SameLine()
        imgui.Text(jam(0xeb4d))

        imgui.PopFont()
        imgui.End()
    end)

imgui.OnInitialize(function()
  local font_config = imgui.ImFontConfig()
  font_config.SizePixels = 20;
  local iconRanges = new.ImWchar[3](jam.min_range, jam.max_range, 0)
  font['jam'] = imgui.GetIO().Fonts:AddFontFromMemoryCompressedBase85TTF(jam.get_font_data_base85(), 24, font_config, iconRanges) -- Подгружаем наш шрифт прямиком из библиотеки
end)
1643558630223.png



Установка​

  1. Скачать jamicons.lua
  2. Закинуть его в moonloader/lib/
 

Вложения

  • jamicons.lua
    182.4 KB · Просмотры: 87
Последнее редактирование:

SomaGnoma

Известный
442
152
Посмотреть вложение 134202
Jam Icons - это набор значков SVG, предназначенных для веб-проектов, иллюстраций, печатных проектов и т.д.
Я же сделал из них шрифт и переделал библиотеку ФИПа, что-бы ими можно было нормально пользоваться.

Ссылки​

Оригинальный сайт: сайт
Репозитория на GitHub: тут

Использование​

  • Выбор подходящего значка
Что-бы выбрать подходящую иконку, Вам нужны перейти на оригинальный сайт и с помощью поиска найти её.​
После того как Вы нашли, вам стоит навестиcь на неё и скопировать название.​
  1. Если название содержит символ "-", то Вам стоит заменить его на "_".
  2. Если Вы хотите вызвать значок как jam.WORLD, то стоит перевести все буквы в верхний регистр.

  • Общий пример
Общий пример:
local jamin, jamax = jam.min_range,  jam.max_range
local apple = jam 'apple'
local music = jam(0xeb4d)
local world = jam.WORLD

local font_data = jam.get_font_data_base85()

  • Готовый скрипт
Lua:
local imgui = require 'mimgui'
local ffi = require 'ffi'
local new = imgui.new

local jam = require 'jamicons' -- Подключаем нужную библиотеку
local font = {}

function main()
    wait(-1)
end

local ui = imgui.OnFrame( -- Рендерим окно
    function() return true end,
    function(player)
        imgui.Begin('Jam ICONS')
        imgui.Text('EXAMPLES:\n')
        imgui.PushFont(font['jam']) -- Применяем шрифт только к определённому тексту

        imgui.Text(jam.WORLD)
        imgui.SameLine()
        imgui.Text(jam['FLAME'])
        imgui.SameLine()
        imgui.Text(jam(0xeb4d))

        imgui.PopFont()
        imgui.End()
    end)

imgui.OnInitialize(function()
  local font_config = imgui.ImFontConfig()
  font_config.SizePixels = 20;
  local iconRanges = new.ImWchar[3](jam.min_range, jam.max_range, 0)
  font['jam'] = imgui.GetIO().Fonts:AddFontFromMemoryCompressedBase85TTF(jam.get_font_data_base85(), 24, font_config, iconRanges) -- Подгружаем наш шрифт прямиком из библиотеки
end)
Посмотреть вложение 134197


Установка​

  1. Скачать jamicons.lua
  2. Закинуть его в moonloader/lib/
давайте сразу либу стикеров из одноклассников для mimgui?
 

lorgon

Известный
Автор темы
657
266
Если кому-то нужно, то собранный шрифт в формате TTF можно найти на GitHub. К сожаление в тему прикрепить не смогу.
 

dmitri4

Известный
452
79
Как можно адекватно сделать? Если добавить все вместе то иконка есть но текста нет
Lua:
imgui.PushFont(font['jam']) imgui.Text(jam.HEART) imgui.PopFont() imgui.SameLine() imgui.Text( ''..getCharHealth(playerPed) )
 

lorgon

Известный
Автор темы
657
266
Как можно адекватно сделать? Если добавить все вместе то иконка есть но текста нет
Lua:
imgui.PushFont(font['jam']) imgui.Text(jam.HEART) imgui.PopFont() imgui.SameLine() imgui.Text( ''..getCharHealth(playerPed) )
Пришли весь свой код. У меня всё рисуется:

1644007113181.png
 
  • Нравится
Реакции: dmitri4

_Dino_

Активный
135
51
Lua:
local FIRST_WINDOW = imgui.OnFrame(
function() return MAIN_WINDOW[0] end,
function(player)
 local sw, sh = getScreenResolution()
 imgui.SetNextWindowPos(imgui.ImVec2(sw/2, sh/2), imgui.Cond.FirstUseEver, imgui.ImVec2(0.5, 0.5))
 imgui.SetNextWindowSize(imgui.ImVec2(620, 265), imgui.Cond.FirstUseEver)
 imgui.Begin("Test Jam Icons", MAIN_WINDOW, imgui.WindowFlags.NoCollapse + imgui.WindowFlags.NoResize + imgui.WindowFlags.NoScrollbar)
 imgui.PushFont(font["jam"])
 if imgui.Button(jam.COG_F..u8" Настройки", imgui.ImVec2(120, 40)) then msg("Это тест скрипт..") end -- Отстутствует текст после иконки
 imgui.Text(jam.PICTURE..u8" Изображение :)") -- Отстутствует текст после картинки
 imgui.PopFont()
 imgui.SameLine()
 imgui.Text(u8" Изображение :)")
 imgui.End()
end)
 

lorgon

Известный
Автор темы
657
266
Lua:
local FIRST_WINDOW = imgui.OnFrame(
function() return MAIN_WINDOW[0] end,
function(player)
 local sw, sh = getScreenResolution()
 imgui.SetNextWindowPos(imgui.ImVec2(sw/2, sh/2), imgui.Cond.FirstUseEver, imgui.ImVec2(0.5, 0.5))
 imgui.SetNextWindowSize(imgui.ImVec2(620, 265), imgui.Cond.FirstUseEver)
 imgui.Begin("Test Jam Icons", MAIN_WINDOW, imgui.WindowFlags.NoCollapse + imgui.WindowFlags.NoResize + imgui.WindowFlags.NoScrollbar)
 imgui.PushFont(font["jam"])
 if imgui.Button(jam.COG_F..u8" Настройки", imgui.ImVec2(120, 40)) then msg("Это тест скрипт..") end -- Отстутствует текст после иконки
 imgui.Text(jam.PICTURE..u8" Изображение :)") -- Отстутствует текст после картинки
 imgui.PopFont()
 imgui.SameLine()
 imgui.Text(u8" Изображение :)")
 imgui.End()
end)
Это обязательно:
Lua:
imgui.OnInitialize(function()
  local font_config = imgui.ImFontConfig()
  font_config.SizePixels = 20
  local iconRanges = new.ImWchar[3](jam.min_range, jam.max_range, 0)
  font['jam'] = imgui.GetIO().Fonts:AddFontFromMemoryCompressedBase85TTF(jam.get_font_data_base85(), 24, font_config, iconRanges) -- Подгружаем наш шрифт прямиком из библиотеки
end)
 

_Dino_

Активный
135
51
Это обязательно:
Lua:
imgui.OnInitialize(function()
  local font_config = imgui.ImFontConfig()
  font_config.SizePixels = 20
  local iconRanges = new.ImWchar[3](jam.min_range, jam.max_range, 0)
  font['jam'] = imgui.GetIO().Fonts:AddFontFromMemoryCompressedBase85TTF(jam.get_font_data_base85(), 24, font_config, iconRanges) -- Подгружаем наш шрифт прямиком из библиотеки
end)
это у меня есть, прям в точной копии

Луа:
local imgui = require 'mimgui'
local ffi = require 'ffi'
local new = imgui.new

local jam = require 'jamicons' -- Подключаем нужную библиотеку
local font = {}

function main()
    wait(-1)
end

local ui = imgui.OnFrame( -- Рендерим окно
    function() return true end,
    function(player)
        imgui.Begin('Jam ICONS')
        imgui.Text('EXAMPLES:\n')
        imgui.PushFont(font['jam']) -- Применяем шрифт только к определённому тексту

        imgui.Text(jam.WORLD.." First")
        imgui.SameLine()
        imgui.Text(jam['FLAME'].." Two")
        imgui.SameLine()
        imgui.Text(jam(0xeb4d).." Three")

        imgui.PopFont()
        imgui.End()
    end)

imgui.OnInitialize(function()
  local font_config = imgui.ImFontConfig()
  font_config.SizePixels = 20;
  local iconRanges = new.ImWchar[3](jam.min_range, jam.max_range, 0)
  font['jam'] = imgui.GetIO().Fonts:AddFontFromMemoryCompressedBase85TTF(jam.get_font_data_base85(), 24, font_config, iconRanges) -- Подгружаем наш шрифт прямиком из библиотеки
end)
Для примера взял даже код из описания к теме, но всё равно нету текста
 
Последнее редактирование:

lorgon

Известный
Автор темы
657
266
это у меня есть, прям в точной копии

Луа:
local imgui = require 'mimgui'
local ffi = require 'ffi'
local new = imgui.new

local jam = require 'jamicons' -- Подключаем нужную библиотеку
local font = {}

function main()
    wait(-1)
end

local ui = imgui.OnFrame( -- Рендерим окно
    function() return true end,
    function(player)
        imgui.Begin('Jam ICONS')
        imgui.Text('EXAMPLES:\n')
        imgui.PushFont(font['jam']) -- Применяем шрифт только к определённому тексту

        imgui.Text(jam.WORLD.." First")
        imgui.SameLine()
        imgui.Text(jam['FLAME'].." Two")
        imgui.SameLine()
        imgui.Text(jam(0xeb4d).." Three")

        imgui.PopFont()
        imgui.End()
    end)

imgui.OnInitialize(function()
  local font_config = imgui.ImFontConfig()
  font_config.SizePixels = 20;
  local iconRanges = new.ImWchar[3](jam.min_range, jam.max_range, 0)
  font['jam'] = imgui.GetIO().Fonts:AddFontFromMemoryCompressedBase85TTF(jam.get_font_data_base85(), 24, font_config, iconRanges) -- Подгружаем наш шрифт прямиком из библиотеки
end)
Для примера взял даже код из описания к теме, но всё равно нету текста
Так, а библиотеку ты точно установил? Я просто ещё раз перепроверил код и у меня он работает.
 

_Dino_

Активный
135
51
Так, а библиотеку ты точно установил? Я просто ещё раз перепроверил код и у меня он работает.
Установил. Иконки отображаются но без текста, приходится только так:
Lua:
imgui.PushFont(font["jam"])
imgui.Text(jam.COG)
imgui.PopFont()
imgui.SameLine()
imgui.Text(" Настройки")
А вот в кнопки уже никак не добавить