Ajouter des points de suspension pour le débordement de texte en SVG?

Je suis en utilisant D3.js. J'aimerais trouver une SVG équivalent à celui de cette classe CSS, ce qui ajoute des points de suspension si le texte coule de sa div contenant:

.ai-ellipsis {
  display: block;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  -o-text-overflow: ellipsis;
  -moz-binding: url(<q>assets/xml/ellipsis.xml#ellipsis</q>);
}

C'est mon SVG:

<g class="bar" transform="translate(0,39)">
    <text class="label" x="-3" y="6.5" dy=".35em" text-anchor="start">Construction</text>    
    <rect height="13" width="123"></rect>
</g>

C'est générée comme suit:

barEnter.append("text").attr("class", "label")
        .attr("x", -3).attr("y", function() { return y.rangeBand() / 2})
        .attr("dy", ".35em").attr("text-anchor", "start")
        .text(function(d) {
            return d.Name;
        });

Actuellement, le texte déborde et se chevauchent les rect élément.

Est-il possible que je peux dire, "si le texte est plus qu'une certaine largeur, de la recadrer et ajouter des points de suspension"?

  • Une fois que vous avez mis en place votre solution, en termes d'amélioration de l'UX, vous pouvez envisager de fournir une alternative à montrer la valeur d'origine, dans le cas où le texte tronqué n'est évidemment pas facile de les comprendre ou de les distinguer des autres textes tronqués. par exemple, utiliser les info-bulles
InformationsquelleAutor Richard | 2013-04-12