Question: How can I limit the length of the text, e.g., 50, and put three dots in the display?

```
{% if myentity.text|length > 50 %}

{% block td_text %} {{ myentity.text}}{% endblock %}

{%endif%}

```

Answer: 
```
{{ myentity.text|length > 50 ? myentity.text|slice(0, 50) ~ '...' : myentity.text  }}

```

You need [Twig 1.6](http://twig.sensiolabs.org/doc/filters/slice.html)
if anyone needs this from the modern world, since this question is so old, I would do it this way: I would definitely not want to have an incomplete word at the end, therefor I prefer to do it with the following steps:
limiting the wanted length of characters, exploid my text into a bunch of arrays of sentences separated with a comma or a dot depends on your text, remove the last array which represent the incomplete word then joining or imploiding those arrays together and of course do not forget to join them with that dot we removed when exploiding the string of characters, and outside of the twig {{}} add your three dots, with that been said it will look something like this:

 `{{myentity.text|slice(0,50)|split('.')|slice(0,-1)|join('.')}}...`

`<a href="#">readeMore</a>`