Подведи собственные итоги года совместно с YOUGAME и забери ценные призы! Перейти

Вопрос Render 2 text 1 with color and 2

  • Автор темы Автор темы Dark001
  • Дата начала Дата начала
С++
Начинающий
Начинающий
Статус
Оффлайн
Регистрация
18 Янв 2021
Сообщения
88
Реакции
8
Как зарендерить в лв 2 текста но нужно чтобы 1 текст был допустим красного цвета а 2 часть допустим белого чтобы не мучиться в x y вот пример

draw->AddText(ImVec2(pos.x + 53, pos.y + 33), ImColor(255, 255, 255), "Cheat");
draw->AddText(ImVec2(pos.x + 93, pos.y + 33), ImColor(0, 150, 255), "Name");
 
У ImFont есть метод CalcTextSizeA, он выдает тебе размер в пикселях (ширину по x, и высоту по y) для заданного текста.
Код:
Expand Collapse Copy
ImVec2 text_size = font->CalcTextSizeA(font_size, FLT_MAX, 0, u8"Твой текст");
Затем прибавляй этот размер к pos.x + 53 + text_size.x в твоем случае.
 
Код:
Expand Collapse Copy
std::vector<std::string> text = { "First", "Second" };
d->AddText(p + ImVec2(5, 20), ImColor(first color), text.at(0).c_str());
d->AddText(p + ImVec2(5 + ImGui::CalcTextSize(text[0].c_str()).x, 20), ImColor(second color), text.at(1).c_str());
 
Назад
Сверху Снизу