MCPcopy Create free account
hub / github.com/DISTRHO/Cardinal / RenderChar

Method RenderChar

plugins/Cardinal/src/DearImGui/imgui_draw.cpp:3526–3538  ·  view source on GitHub ↗

Note: as with every ImDrawList drawing function, this expects that the font atlas texture is bound.

Source from the content-addressed store, hash-verified

3524
3525// Note: as with every ImDrawList drawing function, this expects that the font atlas texture is bound.
3526void ImFont::RenderChar(ImDrawList* draw_list, float size, ImVec2 pos, ImU32 col, ImWchar c) const
3527{
3528 const ImFontGlyph* glyph = FindGlyph(c);
3529 if (!glyph || !glyph->Visible)
3530 return;
3531 if (glyph->Colored)
3532 col |= ~IM_COL32_A_MASK;
3533 float scale = (size >= 0.0f) ? (size / FontSize) : 1.0f;
3534 pos.x = IM_FLOOR(pos.x);
3535 pos.y = IM_FLOOR(pos.y);
3536 draw_list->PrimReserve(6, 4);
3537 draw_list->PrimRectUV(ImVec2(pos.x + glyph->X0 * scale, pos.y + glyph->Y0 * scale), ImVec2(pos.x + glyph->X1 * scale, pos.y + glyph->Y1 * scale), ImVec2(glyph->U0, glyph->V0), ImVec2(glyph->U1, glyph->V1), col);
3538}
3539
3540// Note: as with every ImDrawList drawing function, this expects that the font atlas texture is bound.
3541void ImFont::RenderText(ImDrawList* draw_list, float size, ImVec2 pos, ImU32 col, const ImVec4& clip_rect, const char* text_begin, const char* text_end, float wrap_width, bool cpu_fine_clip) const

Callers 2

RenderTextEllipsisMethod · 0.80
DebugNodeFontMethod · 0.80

Calls 3

ImVec2Function · 0.85
PrimReserveMethod · 0.80
PrimRectUVMethod · 0.80

Tested by

no test coverage detected