Reference API Roblox

Engine API

Website

Related

Reference API Roblox

UIStroke

Applies an outline to text or a UI border.

Member index 6

HistoryMember
553ApplyStrokeMode: ApplyStrokeMode
553Color: Color3
553Enabled: bool
553LineJoinMode: LineJoinMode
553Thickness: float
553Transparency: float
inherited from Instance
553Archivable: bool
635Capabilities: SecurityCapabilities
553Name: string
553Parent: Instance
635Sandboxed: bool
616UniqueId: UniqueId
576AddTag(tag: string): null
573ClearAllChildren(): null
462Clone(): Instance
573Destroy(): null
486FindFirstAncestor(name: string): Instance
486FindFirstAncestorOfClass(className: string): Instance
486FindFirstAncestorWhichIsA(className: string): Instance
486FindFirstChild(name: string, recursive: bool = false): Instance
486FindFirstChildOfClass(className: string): Instance
486FindFirstChildWhichIsA(className: string, recursive: bool = false): Instance
486FindFirstDescendant(name: string): Instance
563GetActor(): Actor
486GetAttribute(attribute: string): Variant
462GetAttributeChangedSignal(attribute: string): RBXScriptSignal
631GetAttributes(): Dictionary
648GetChildren(): Instances
462GetDebugId(scopeLength: int = 4): string
486GetDescendants(): Array
486GetFullName(): string
641GetStyled(name: string): Variant
576GetTags(): Array
576HasTag(tag: string): bool
486IsAncestorOf(descendant: Instance): bool
486IsDescendantOf(ancestor: Instance): bool
580IsPropertyModified(name: string): bool
573Remove(): null
576RemoveTag(tag: string): null
580ResetPropertyToDefault(name: string): null
573SetAttribute(attribute: string, value: Variant): null
462WaitForChild(childName: string, timeOut: double): Instance
648children(): Instances
553clone(): Instance
573destroy(): null
553findFirstChild(name: string, recursive: bool = false): Instance
648getChildren(): Instances
553isDescendantOf(ancestor: Instance): bool
573remove(): null
462AncestryChanged(child: Instance, parent: Instance)
462AttributeChanged(attribute: string)
462ChildAdded(child: Instance)
462ChildRemoved(child: Instance)
462DescendantAdded(descendant: Instance)
462DescendantRemoving(descendant: Instance)
500Destroying()
553childAdded(child: Instance)
inherited from Object
647ClassName: string
647className: string
647GetPropertyChangedSignal(property: string): RBXScriptSignal
647IsA(className: string): bool
650isA(className: string): bool
647Changed(property: string)

Description

UIStroke applies an outline to text or a UI border. Key features include:

  • Adjust the Color and Thickness of the stroke outline.
  • Change the stroke Transparency independently from the text or UI object.
  • Choose the LineJoinMode of the stroke (round, bevel, or miter).
  • Add a gradient to the stroke via the UIGradient instance.
  • Use [rich text]((../../../ui/rich-text.md) tags to add stroke to inline text segments.

For more details on the UIStroke object, see Appearance Modifiers.

History 19

Members 6

ApplyStrokeMode

TypeDefault
ApplyStrokeModeContextual

When a UIStroke instance is applied to a text object, the ApplyStrokeMode property determines whether to apply the stroke to the object's border instead of the text itself.

ApplyStrokeMode = Contextual
ApplyStrokeMode = Border

History 3

Color

TypeDefault
Color30, 0, 0

Determines the UIStroke color. You can also insert a UIGradient instance as a child to create gradient strokes.

Color = (0, 95, 225)
UIStroke with UIGradient child

History 3

Enabled

TypeDefault
booltrue

This property determines whether the UIStroke is visible. When set to false, the stroke will not be rendered. Defaults to true.

History 3

LineJoinMode

TypeDefault
LineJoinModeRound

This property determines how corners are interpreted. It accepts an LineJoinMode value of either Round (default), Bevel, or Miter.

LineJoinMode = Round
LineJoinMode = Bevel
LineJoinMode = Miter

History 3

Thickness

TypeDefault
float1

This property determines the stroke's thickness, measured in pixels from the parent's outer edges.

Thickness = 4
Thickness = 12

Be mindful of tweening this UIStroke property when applied to text objects. This renders and stores many glyph sizes each frame, potentially causing performance issues or text flickering.

History 3

Transparency

TypeDefault
float0

The Transparency property sets the stroke opacity independently of the parent object's BackgroundTransparency or TextTransparency. This allows you to render text and borders that are "hollow" (consisting of only an outline).

Transparency = 0.5  ·  TextLabel.TextTransparency = 0
Transparency = 0  ·  TextLabel.TextTransparency = 1

History 3

Settings