Skip to content

Instantly share code, notes, and snippets.

@LukeFinch
Last active May 16, 2022 17:17
Show Gist options
  • Save LukeFinch/7bc91c2dab2606ae6045f66e573a86cc to your computer and use it in GitHub Desktop.
Save LukeFinch/7bc91c2dab2606ae6045f66e573a86cc to your computer and use it in GitHub Desktop.
Text to multiple block lines
let input = figma.currentPage.selection[0] as TextNode
await figma.loadFontAsync(input.fontName as FontName)
let text = input.characters
let frame = figma.createFrame()
frame.fills = []
frame.clipsContent = false
frame.layoutMode = "VERTICAL"
frame.counterAxisSizingMode = "AUTO"
text.split(/\r?\n/).forEach(line => {
let clone = input.clone()
clone.characters = line
let subFrame = figma.createFrame()
subFrame.layoutMode = "HORIZONTAL"
subFrame.counterAxisSizingMode = "AUTO"
subFrame.counterAxisAlignItems = "CENTER"
subFrame.appendChild(clone)
subFrame.paddingLeft = 4
subFrame.paddingRight = 4
frame.appendChild(subFrame)
})
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment