Unlike html, text in svg is much harder to tame. There is no way to create flowing
text, so newlines should be entered manually. In svg.js there are two ways to
create text elements.
The first and easiest method is to provide a string of text, split by newlines:
var text = draw.text("Lorem ipsum dolor sit amet consectetur.\nCras
sodales imperdiet auctor.")
This will automatically create a block of text and insert newlines where
necessary.
The second method will give you much more control but requires a bit more code:
var text = draw.text(function(add) {
add.tspan('Lorem ipsum dolor sit amet ').newLine()
add.tspan('consectetur').fill('#f06')
add.tspan('.')
add.tspan('Cras sodales imperdiet auctor.').newLine().dx(20)
add.tspan('Nunc ultrices lectus at erat').newLine()
add.tspan('dictum pharetra elementum ante').newLine()
})
Changing text afterwards is also possible with the!text()!method:
text.text('Brilliant!')
To get the raw text content:
text.content
The sugar.js module provides some syntax sugar specifically for this element
type:
text.font({
family: 'Helvetica'