Difference between revisions of "CompositeFont.new"

From GiderosMobile
m (Text replacement - "<source" to "<syntaxhighlight")
m (Text replacement - "</source>" to "</syntaxhighlight>")
Line 7: Line 7:
 
<syntaxhighlight lang="lua">
 
<syntaxhighlight lang="lua">
 
CompositeFont.new(definition)  
 
CompositeFont.new(definition)  
</source>
+
</syntaxhighlight>
  
 
Each layer of the composited font is defined by a table. The following fields are possible:
 
Each layer of the composited font is defined by a table. The following fields are possible:
Line 36: Line 36:
 
tf:setPosition(16, 64)
 
tf:setPosition(16, 64)
 
stage:addChild(tf)
 
stage:addChild(tf)
</source>
+
</syntaxhighlight>
  
 
{{CompositeFont}}
 
{{CompositeFont}}

Revision as of 14:27, 13 July 2023

Available since: Gideros 2019.1
Class: CompositeFont

Description

Creates a new CompositeFont object.

CompositeFont.new(definition)

Each layer of the composited font is defined by a table. The following fields are possible:

  • font: the font object to use for this layer (mandatory)
  • color: the color to use when rendering this layer
  • alpha: the alpha value to use with the color
  • x: the X offset to apply
  • y: the Y offset to apply
  • name: a name for this layer (since 2021.9)

Note: TTFont without any character list specification aren't supported in composite fonts.

Parameters

definition: (table) a list of layer definition tables

Example

Drawing a black outline:

local str = "My Composite Font text"
local nf = TTFont.new("fonts/Tahoma.ttf", 32, str, true) --Normal
local of = TTFont.new("fonts/Tahoma.ttf", 32, str, true, 3) --Outlined
local cf= CompositeFont.new{ -- *** PLEASE NOTICE THE CURLY BRACES { } INSTEAD OF ( ) ***
	{ font=of, color=0x0 }, -- draw outline in black
	{ font=nf, x=1, y=2 }, -- draw normal text with an offset
}
local tf = TextField.new(cf, str)
tf:setTextColor(0xff0000)
tf:setPosition(16, 64)
stage:addChild(tf)