Il n'y a pas d'attribut pour l'habillage du texte, mais il existe une astuce simple que vous pouvez utiliser. Ajoutez un mot à la fois à un objet texte et lorsqu'il devient trop large, ajoutez un saut de ligne. Vous pouvez utiliser la fonction getBBox () pour déterminer la largeur. Fondamentalement, vous émulez une machine à écrire à l'ancienne. Voici un exemple de code qui le fera pour vous. Vous pouvez facilement transformer cela en une fonction simple qui prend le texte et une largeur.
var r = Raphael(500, 500);
var t = r.text(100, 100).attr('text-anchor', 'start');
var maxWidth = 100;
var content = "Mauris mauris ante, blandit et, ultrices a, suscipit eget, quam. Integer ut neque. Vivamus nisi metus, molestie vel, gravida in, condimentum sit amet, nunc. Nam a nibh. Donec suscipit eros. Nam mi. Proin viverra leo ut odio. Curabitur malesuada. Vestibulum a velit eu ante scelerisque vulputate. ";
var words = content.split(" ");
var tempText = "";
for (var i=0; i<words.length; i++) {
t.attr("text", tempText + " " + words[i]);
if (t.getBBox().width > maxWidth) {
tempText += "\n" + words[i];
} else {
tempText += " " + words[i];
}
}
t.attr("text", tempText.substring(1));