Log in to vote

RichText coloring with variables?

Asked by 12 days ago

Hey there! So I’m trying to color a TextLabel with each letter having a different color. The problem is that I need to do it with variables and it just doesn’t work.

word.Text = “<font color = ‘#00be00’>”..Variable1.."</font.><font color = ‘#ff0000’>"..Variable2

Any help would be really appreciated!

1 answer

Log in to vote
Answered by
sO_Ov 275 Moderation Voter
12 days ago
Edited 12 days ago

Your mistake is in the quotes, you can use double quotes(") and single (') to separate the strings, try this

word.Text = "<font color='#00BE00'>"..Variable1.."</font><font color='#FF0000'>"..Variable2.."</font>"

if you only will use rich text for color, you can make a function to make it easyer

local function toRichText(...)
    local args = {...}
    local texts = {}
    for i,v in next, args do
        local colors ={v[2].R, v[2].G, v[2].B}
        texts[i] = "<font color='rgb("..table.concat(colors, ', ')..")'>"..v[1].."</font>"
    return table.concat(texts, '')

-- Single text example:
word.Text = toRichText({'Hello',, 170, 255)})

-- Multi text example
word.Text = toRichText(
     {'Hello',, 170, 255)}, 
     {', how are you?',,0,0,0)}
Tysm MajinBluee 80 — 12d

Answer this question