Text nodes - kuimoani/defold GitHub Wiki

GUI text nodes

Font๋Š” GUI ์”ฌ์—์„œ text ๋…ธ๋“œ๋ฅผ ๋ Œ๋”๋งํ•˜๋Š”๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ์ด ๋งค๋‰ด์–ผ์€ GUI ์”ฌ์—์„œ ํ…์ŠคํŠธ๋ฅผ ๋‹ค๋ฃจ๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค.

Adding text nodes

GUI text ๋…ธ๋“œ์—์„œ ์‚ฌ์šฉํ•  ํฐํŠธ๋Š” GUI ์ปดํฌ๋„ŒํŠธ์— ์ถ”๊ฐ€ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. Fonts ํด๋”์—์„œ ๋งˆ์šฐ์Šค ์˜ค๋ฅธ์ชฝ ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅด๊ฑฐ๋‚˜ ์ƒ๋‹จ ๋ฉ”๋‰ด์˜ GUI ๋ฉ”๋‰ด์—์„œ ๋‹จ์ถ•ํ‚ค๋ฅผ ๋ˆŒ๋Ÿฌ ํฐํŠธ๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

Fonts

Text ๋…ธ๋“œ๋Š” ๋ช‡ ๊ฐ€์ง€ ํŠน๋ณ„ํ•œ ํ”„๋กœํผํ‹ฐ๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

Font

์ƒ์„ฑํ•œ ๋ชจ๋“  text ๋…ธ๋“œ๋Š” Font ํ”„๋กœํผํ‹ฐ๋ฅผ ์„ค์ •ํ•ด์•ผ ํ•จ

Text

์ด ์†์„ฑ์— ํฌํ•จ๋œ ๋ฌธ์ž๋ฅผ ํ‘œ์‹œํ•จ

Line Break

pivot ์„ค์ •์— ๋”ฐ๋ผ ํ…์ŠคํŠธ๋ฅผ ์ •๋ ฌํ•˜๊ณ  ํ…์ŠคํŠธ๋ฅผ ์—ฌ๋Ÿฌ ์ค„๋กœ ๋‚˜๋ˆŒ์ง€๋ฅผ ๊ฒฐ์ •ํ•จ. ๋…ธ๋“œ์˜ ๋„“์ด์— ๋”ฐ๋ผ ์ค„๋ฐ”๊ฟˆ(wrap)์ด ๊ฒฐ์ •๋จ.

Alignment

๋…ธ๋“œ์˜ pivot ๋ฅผ ์„ค์ •ํ•ด์„œ ํ…์ŠคํŠธ์˜ adjust mode๋ฅผ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Center

pivot์ด "Center", "North", "South" ์ด๋ฉด ํ…์ŠคํŠธ๊ฐ€ ์ค‘์•™ ์ •๋ ฌ๋ฉ๋‹ˆ๋‹ค.

Left

pivot์ด "West" ์ด๋ฉด ํ…์ŠคํŠธ๊ฐ€ ์™ผ์ชฝ ์ •๋ ฌ๋ฉ๋‹ˆ๋‹ค.

Right

pivot์ด "East" ์ด๋ฉด ํ…์ŠคํŠธ๊ฐ€ ์˜ค๋ฅธ์ชฝ ์ •๋ ฌ๋ฉ๋‹ˆ๋‹ค.

Text alignment

Modifying text nodes in runtime

Text ๋…ธ๋“œ๋Š” ํฌ๊ธฐ, ํ”ผ๋ฒ—, ์ƒ‰์ƒ ๋“ฑ์„ ์„ค์ •ํ•˜๋Š” ์ผ๋ฐ˜์ ์ธ ํ•จ์ˆ˜์—๋„ ๋ฐ˜์‘ํ•˜์ง€๋งŒ ํ…์ŠคํŠธ ๋…ธ๋“œ ์ „์šฉ์˜ ๋ช‡๋ช‡ ํ•จ์ˆ˜๋„ ์กด์žฌํ•ฉ๋‹ˆ๋‹ค.

  • text ๋…ธ๋“œ์˜ ํฐํŠธ๋ฅผ ๋ณ€๊ฒฝํ•˜๊ธฐ ์œ„ํ•ด gui.set_font() ํ•จ์ˆ˜ ํ˜ธ์ถœ
  • text ๋…ธ๋“œ์˜ ์ค„๋ฐ”๊ฟˆ(line break)๋ฅผ ๋ณ€๊ฒฝํ•˜๊ธฐ ์œ„ํ•ด gui.set_line_break() ํ•จ์ˆ˜ ํ˜ธ์ถœ
  • text ๋…ธ๋“œ์˜ ๋‚ด์šฉ์„ ๋ณ€๊ฒฝํ•˜๊ธฐ ์œ„ํ•ด gui.set_text() ํ•จ์ˆ˜ ํ˜ธ์ถœ
function on_message(self, message_id, message, sender)
    if message_id == hash("set_score") then
        local s = gui.get_node("score")
        gui.set_text(s, message.score)
    end
end

Set text

Set text