RenderCenterText

hinazuki

Потрачен
Автор темы
344
94
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Версия MoonLoader
.026-beta
Наверно вы все знаете про функцию imgui который отображает текст в центре по X позиций(imgui.CenterText).
Вот код:
Lua:
function imgui.CenterText(text)
    local width = imgui.GetWindowWidth()
    local calc = imgui.CalcTextSize(text)
    imgui.SetCursorPosX( width / 2 - calc.x / 2 )
    imgui.Text(text)
end

Мне теперь надо это перевести как-то в рендер, чтобы текст был в центре квадратного бокса.

Можете помочь?
 

hinazuki

Потрачен
Автор темы
344
94
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.

hinazuki

Потрачен
Автор темы
344
94
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.

Vintik

Через тернии к звёздам
Проверенный
1,564
1,043
 

hinazuki

Потрачен
Автор темы
344
94
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Как будто я этого не видел. Я просто нихуя не понял, как это исползвать в рендере.
 

Vintik

Через тернии к звёздам
Проверенный
1,564
1,043
А, рендер, понял 😀
Lua:
-- пример кода

local font_flag = require('moonloader').font_flag
local my_font = renderCreateFont('Verdana', 12, font_flag.BOLD + font_flag.SHADOW)

local pos_x, pos_y = 0, 0 -- координаты прямоугольника
local size_x, size_y = 500, 300 -- ширина 500, высота 300
local text = 'какой-то текст' -- тут твой текст, любой

renderDrawBox(pos_x, pos_y, size_x, size_y, 0xFF000000)
local len_x, len_y = renderGetFontDrawTextLength(font, text), renderGetFontDrawHeight(font)
renderFontDrawText(font, text, pos_x + (size_x - len_x) / 2, pos_y + (size_y - len_y) / 2, 0xFFFFFFFF)
 
  • Нравится
Реакции: Miron Diamond