Difference between revisions of "TextField.new"

From GiderosMobile
 
(2 intermediate revisions by the same user not shown)
Line 9: Line 9:
 
TextField.new(font,text,sample,layout)
 
TextField.new(font,text,sample,layout)
 
</syntaxhighlight>
 
</syntaxhighlight>
 
''text'' has now more '''tags''' available ('''Gideros 2024.3'''):
 
* '''\e[u=''val'']underlined\e[!u]''', ''val'' = line thickness between 0 and 1
 
* '''\e[i=''val'']oblique\e[!i]''', ''val'' = text angle in degree
 
* '''\e[l=''val1'':''val2'']custom line placement and thickness\e[l]''', ''val1'' = line placement (between -1 and 1), ''val2'' = line thickness (between 0 and 1)
 
* '''\e[color=''val'']text color\e[color]''', ''val'' = hex color (ex: #f00)
 
  
 
=== Parameters ===
 
=== Parameters ===
Line 21: Line 15:
 
'''sample''': (string) sample to determine line height '''optional'''<br/>
 
'''sample''': (string) sample to determine line height '''optional'''<br/>
 
'''layout''': (table) layout parameters, see [[TextField:setLayout]] '''optional'''<br/>
 
'''layout''': (table) layout parameters, see [[TextField:setLayout]] '''optional'''<br/>
 +
 +
''text'' has now more tags available ('''Gideros 2024.2'''):
 +
* '''\e[u=''val'']underlined\e[!u]''', ''val'' = line thickness |0, 1]
 +
* '''\e[i=''val'']oblique\e[!i]''', ''val'' = text angle in degree
 +
* '''\e[l=''val1'':''val2'']custom line placement and thickness\e[l]''', ''val1'' = line placement |-1, 1], ''val2'' = line thickness |0, 1]
 +
* '''\e[color=''val'']text color\e[color]''', ''val'' = hex color and alpha (ex: #f005)
  
 
=== Examples ===
 
=== Examples ===
 +
'''Simple text'''
 +
<syntaxhighlight lang="lua">
 +
local text = TextField.new(nil, "This is a text")
 +
text:setPosition(32, 64)
 +
stage:addChild(text)
 +
</syntaxhighlight>
 +
 
'''Semi transparent colored text'''
 
'''Semi transparent colored text'''
 
<syntaxhighlight lang="lua">
 
<syntaxhighlight lang="lua">
Line 30: Line 37:
 
</syntaxhighlight>
 
</syntaxhighlight>
  
'''New Gideros 2024.3 tags'''
+
'''New Gideros 2024.2 tags + layout'''
 
<syntaxhighlight lang="lua">
 
<syntaxhighlight lang="lua">
 
local font = TTFont.new("fonts/arial.ttf", 20, "", nil, nil)
 
local font = TTFont.new("fonts/arial.ttf", 20, "", nil, nil)
 
local tf = TextField.new(font,
 
local tf = TextField.new(font,
"Text is \e[u=0.2]underlined\e[!u], text is \e[i=15]oblique 15°\e[!i], custom \e[l=1:0.5]line placement and thickness\e[l], last \e[color=#f00]is text color\e[color].")
+
"Text is \e[u=0.2]underlined\e[!u],\n"..
tf:setLayout { w=400, h=100, flags=1280|FontBase.TLF_CENTER|FontBase.TLF_VCENTER }
+
"text is \e[i=15]oblique 15°\e[!i],\n"..
 +
"custom \e[l=0.5:0.5]line placement and thickness\e[l],\n"..
 +
"last \e[color=#f00]is text color\e[color]."
 +
)
 +
tf:setLayout { w=500, h=200, flags=1280|FontBase.TLF_CENTER|FontBase.TLF_VCENTER }
 
tf:setPosition(0, 40)
 
tf:setPosition(0, 40)
 
stage:addChild(tf)
 
stage:addChild(tf)

Latest revision as of 09:58, 26 August 2024


Available since: Gideros 2011.6
Class: TextField

Description

Creates a new TextField object with the specified font and text. Gideros runtime includes a default font. If you specify nil for the font parameter while creating the TextField object, default font is used.

TextField.new(font,text,sample,layout)

Parameters

font: (FontBase) the font used for displaying the TextField object. If nil, default font is used
text: (string) the text to be displayed optional
sample: (string) sample to determine line height optional
layout: (table) layout parameters, see TextField:setLayout optional

text has now more tags available (Gideros 2024.2):

  • \e[u=val]underlined\e[!u], val = line thickness |0, 1]
  • \e[i=val]oblique\e[!i], val = text angle in degree
  • \e[l=val1:val2]custom line placement and thickness\e[l], val1 = line placement |-1, 1], val2 = line thickness |0, 1]
  • \e[color=val]text color\e[color], val = hex color and alpha (ex: #f005)

Examples

Simple text

local text = TextField.new(nil, "This is a text")
text:setPosition(32, 64)
stage:addChild(text)

Semi transparent colored text

local text = TextField.new(nil, "This is a \e[color=#f005]semi transparent red\e[color] text")
text:setPosition(32, 64)
stage:addChild(text)

New Gideros 2024.2 tags + layout

local font = TTFont.new("fonts/arial.ttf", 20, "", nil, nil)
local tf = TextField.new(font,
	"Text is \e[u=0.2]underlined\e[!u],\n"..
	"text is \e[i=15]oblique 15°\e[!i],\n"..
	"custom \e[l=0.5:0.5]line placement and thickness\e[l],\n"..
	"last \e[color=#f00]is text color\e[color]."
)
tf:setLayout { w=500, h=200, flags=1280|FontBase.TLF_CENTER|FontBase.TLF_VCENTER }
tf:setPosition(0, 40)
stage:addChild(tf)