Исходник Tabler Icons 2.31.0

neverlane

t.me/neverlane00
Автор темы
Друг
998
1,143

Tabler Icons 2.31.0

Это библиотека для иконок Tabler Icons
Библиотека содержит дохуя+ иконок
Найти названия иконок можно на
tabler-icons.io

Установка
Закинуть файл tabler_icons.lua в папку lib
В библиотеке уже есть шрифт иконок в base85


Исходный код
генератор шрифта можно найти на гитхабе, инструкция там же

Использование
Функции и константы:
local ti = require 'tabler_icons'

-- иконки
local github = ti 'brand-github'
local gps = ti(0xed7a)
local checkbox = ti.ICON_CHECKBOX

-- версии
local lib_version = ti.__VERSION -- либы
local icons_version = ti. __ICONS_VERSION -- иконок

-- минимальный и максимальный код иконок
local min_range, max_range = ti.min_range, ti.max_range
-- шрифт в кодировке base85
local font_data = ti.get_font_data_base85()
mimgui: Подключение шрифта:
local ti = require 'tabler_icons'
local imgui = require 'mimgui'

-- функция подключения шрифта, аргумент fontSize - размер шрифта
local function loadIconicFont(fontSize)
    local config = imgui.ImFontConfig()
    config.MergeMode = true
    config.PixelSnapH = true
    local iconRanges = imgui.new.ImWchar[3](ti.min_range, ti.max_range, 0)
    imgui.GetIO().Fonts:AddFontFromMemoryCompressedBase85TTF(ti.get_font_data_base85(), fontSize, config, iconRanges)
end

imgui.OnInitialize(function()
    loadIconicFont(14)
    imgui.GetIO().IniFilename = nil
end)
mimgui: Пример:
local ti = require 'tabler_icons'
local imgui = require 'mimgui'

local function loadIconicFont(fontSize)
    local config = imgui.ImFontConfig()
    config.MergeMode = true
    config.PixelSnapH = true
    local iconRanges = imgui.new.ImWchar[3](ti.min_range, ti.max_range, 0)
    imgui.GetIO().Fonts:AddFontFromMemoryCompressedBase85TTF(ti.get_font_data_base85(), fontSize, config, iconRanges)
end

imgui.OnInitialize(function()
    loadIconicFont(14)
    imgui.GetIO().IniFilename = nil
end)

local window = imgui.new.bool(false)

imgui.OnFrame(function() return window[0] end, function()
    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(350,250), imgui.Cond.FirstUseEver)
    imgui.Begin('Tabler Icons', window)
    imgui.Text('Tabler Icons mimgui example')
    local github = ti 'brand-github'
    local checkbox = ti.ICON_CHECKBOX
    imgui.Text(github .. ' github icon')
    imgui.Text(checkbox .. ' checkbox icon')
    imgui.End()
end)

function main()
    repeat wait(0) until isSampAvailable()
    sampRegisterChatCommand('ticons',function()
        window[0] = not window[0]
    end)
    wait(-1)
end
SO59HM0.png
Lua:
function loadFonts(sizes)
    local fonts = {}
    local config = imgui.ImFontConfig()
    config.MergeMode = true
    config.PixelSnapH = true
    local iconRanges = imgui.new.ImWchar[3](ti.min_range, ti.max_range, 0)
    imgui.GetIO().Fonts:AddFontFromMemoryCompressedBase85TTF(ti.get_font_data_base85(), 14, config, iconRanges) -- Обязательно
    for i, v in ipairs(sizes) do
        fonts[v] = imgui.GetIO().Fonts:AddFontFromFileTTF(getFolderPath(0x14) .. '\\trebucbd.ttf', v, nil, imgui.GetIO().Fonts:GetGlyphRangesCyrillic())
        imgui.GetIO().Fonts:AddFontFromMemoryCompressedBase85TTF(ti.get_font_data_base85(), v, config, iconRanges)
    end
    return fonts
end
imgui.OnInitialize(function()
    fonts = loadFonts({16, 25})
    imgui.GetIO().IniFilename = nil
end)

--Использование:
imgui.PushFont(fonts[16])
imgui.Text(ti'info-circle'..u8' Этот текст размером 16')
imgui.PopFont()
imgui.PushFont(fonts[25])
imgui.Text(ti'info-circle'..u8' Этот текст размером 25')
imgui.PopFont()
 

Вложения

  • tabler_icons.lua
    1.9 MB · Просмотры: 3,215
Последнее редактирование:

Receiver

🥩 Передай meat, всё в скип, я в темпе
Проверенный
597
818
оуууу да таблер спасибо кизянчик всегда тёк по нему=)))😍😍😍🥰🥰😘😘
 
  • Нравится
Реакции: Hristot

Hatiko

Известный
Проверенный
1,472
611
Удобно, что иконки на сайте дополнительно тегами помечены, что облегчает сильно поиск.
 

#Kai-

Известный
705
292
Пытался старые fontawesom обновить, но на первой ошибке хуй положил.... Спасибо)))
 

sizeoftrickster

…And Megadeth For All?
Проверенный
120
428
Подскажите пожалуйста, как изменить размер шрифта в Button с иконкой, ниже код, размер шрифта меняется, но вместо иконки вопросик)

Lua:
local font = {}
imgui.OnInitialize(function()
   
   loadIconicFont(14)

    local glyph_ranges = imgui.GetIO().Fonts:GetGlyphRangesCyrillic()
    local path = getFolderPath(0x14) .. '\\trebucbd.ttf'

    font[25] = imgui.GetIO().Fonts:AddFontFromFileTTF(path, 25.0, nil, glyph_ranges)

    imgui.GetIO().IniFilename = nil
end)

-- on frame
imgui.PushFont(font[25])
imgui.Button(ti.ICON_ALIEN .. 'test', imgui.ImVec2(60, 50))
imgui.PopFont()
 

CaJlaT

Овощ
Модератор
2,806
2,603
Подскажите пожалуйста, как изменить размер шрифта в Button с иконкой, ниже код, размер шрифта меняется, но вместо иконки вопросик)

Lua:
local font = {}
imgui.OnInitialize(function()
  
   loadIconicFont(14)

    local glyph_ranges = imgui.GetIO().Fonts:GetGlyphRangesCyrillic()
    local path = getFolderPath(0x14) .. '\\trebucbd.ttf'

    font[25] = imgui.GetIO().Fonts:AddFontFromFileTTF(path, 25.0, nil, glyph_ranges)

    imgui.GetIO().IniFilename = nil
end)

-- on frame
imgui.PushFont(font[25])
imgui.Button(ti.ICON_ALIEN .. 'test', imgui.ImVec2(60, 50))
imgui.PopFont()
Делал для себя функцию подгрузки сразу нескольких размеров для удобства
Lua:
function loadFonts(sizes)
    local fonts = {}
    local config = imgui.ImFontConfig()
    config.MergeMode = true
    config.PixelSnapH = true
    local iconRanges = imgui.new.ImWchar[3](ti.min_range, ti.max_range, 0)
    imgui.GetIO().Fonts:AddFontFromMemoryCompressedBase85TTF(ti.get_font_data_base85(), 14, config, iconRanges) -- Обязательно
    for i, v in ipairs(sizes) do
        fonts[v] = imgui.GetIO().Fonts:AddFontFromFileTTF(getFolderPath(0x14) .. '\\trebucbd.ttf', v, nil, imgui.GetIO().Fonts:GetGlyphRangesCyrillic())
        imgui.GetIO().Fonts:AddFontFromMemoryCompressedBase85TTF(ti.get_font_data_base85(), v, config, iconRanges)
    end
    return fonts
end
imgui.OnInitialize(function()
    fonts = loadFonts({16, 25})
    imgui.GetIO().IniFilename = nil
end)

--Использование:
imgui.PushFont(fonts[16])
imgui.Text(ti'info-circle'..u8' Этот текст размером 16')
imgui.PopFont()
imgui.PushFont(fonts[25])
imgui.Text(ti'info-circle'..u8' Этот текст размером 25')
imgui.PopFont()
 

neverlane

t.me/neverlane00
Автор темы
Друг
998
1,143
обновил либу до иконок версии 1.119.0 и добавил линк на гитхаб с генератором либ (ну если мне влом будет обновить то сами ебните)
 
  • Вау
  • Грустно
  • Нравится
Реакции: UBP, ragedrugg и CaJlaT

neverlane

t.me/neverlane00
Автор темы
Друг
998
1,143
либа обновлена, версия иконок 2.31.0 (плюс примерно 1.5к иконок), используйте константу __ICONS_VERSION чтоб не отсосать хуй
 
  • Влюблен
Реакции: CaJlaT

neverlane

t.me/neverlane00
Автор темы
Друг
998
1,143
  • Нравится
Реакции: de_clain