¿Es posible dibujar texto en un lienzo que tiene puntos suspensivos al final del texto si el texto no cabe en el ancho disponible y debe ser truncado? Gracias.html lienzo texto desbordamiento elipsis
Respuesta
No existe tal cosa para html5 drawText y sería un poco complicado de implementar. Necesitarías un lazo para recortar la cuerda hasta que encaje en el tamaño deseado. Si el texto no se gira o tiene cualquier otro efecto especial, sugeriría utilizar un div normal con posición absoluta y la siguiente de estilos CSS:
overflow: hidden;
text-overflow: ellipsis;
-o-text-overflow: ellipsis;
white-space: nowrap;
width: 100%;
No hay una función estándar.
ya que necesitaba una, he hecho esta pequeña función que calcula la mejor cadena de montaje:
function fittingString(c, str, maxWidth) {
var width = c.measureText(str).width;
var ellipsis = '…';
var ellipsisWidth = c.measureText(ellipsis).width;
if (width<=maxWidth || width<=ellipsisWidth) {
return str;
} else {
var len = str.length;
while (width>=maxWidth-ellipsisWidth && len-->0) {
str = str.substring(0, len);
width = c.measureText(str).width;
}
return str+ellipsis;
}
}
donde c
es el contexto 2D.
se puede dibujar la cadena normalmente después de haber establecido su fuente y otros parámetros de dibujo de su lienzo:
c.fillText(fittingString(c, "A big string that will likely be truncated", 100), 50, 50);
Hay algunas navegador - las tecnologías relacionadas que no son compatibles con varias líneas de renderizado de texto.
Es por eso que he desarrollado una pequeña biblioteca para tratar este problema (entre otros). La biblioteca proporciona objetos para modelar y realizar el procesamiento de texto a nivel de letra. Esto debería hacer justo lo que necesita:
Obtenga más información en http://www.samuelrossille.com/home/jstext para captura de pantalla, tutorial y enlace de descarga.
- 1. CSS Elipsis de desbordamiento de texto no muestra
- 2. androide/webkit texto de desbordamiento: no elipsis de trabajo
- 3. ¿Cómo usar elipsis de desbordamiento de texto en un campo de entrada html?
- 4. lienzo html: recorte y texto
- 5. Elipsis HTML/CSS (...) No funciona
- 6. texto de desbordamiento: no elipsis trabajando en un div que contiene un div en Chrome
- 7. Crear enlaces en lienzo HTML
- 8. Elipsis (texto abreviado) con JSP/EL
- 9. desbordamiento y texto desbordamiento dentro fieldsets
- 10. extracto de la ruta del lienzo html de texto
- 11. dibujar texto "ellipsized" en un lienzo
- 12. elipses que no aparecen en el texto de desbordamiento de
- 13. Varios problemas de compatibilidad del navegador con elipsis de desbordamiento de texto en el lado izquierdo usando RTL
- 14. HTML5 círculo lienzo texto
- 15. HTML, desbordamiento: desplazamiento y float
- 16. ¿Cómo se muestran las elipsis del texto sobrecargado de elementos HTML en Firefox?
- 17. La elipsis '...' no es el color correcto
- 18. Lienzo HTML - Dibujar flechas curvas
- 19. Renderizar texto en lienzo usando WebGL
- 20. ¿Cómo dibujar texto en lienzo?
- 21. Dibujando texto en un lienzo
- 22. elipsis para texto de líneas múltiples en Chrome
- 23. ¿CSS overflow de texto: elipsis funciona en etiquetas de anclaje?
- 24. Elipsis de texto CSS al usar divisiones de ancho variable
- 25. lienzo html5 - ¿Cómo puedo estirar el texto?
- 26. obtener clics a través del lienzo html
- 27. Construir un calibre circular html 5 lienzo
- 28. Lienzo HTML: trazo punteado alrededor del círculo
- 29. Lienzo HTML como superposición en Google Maps
- 30. Cómo evitar la auto-estiramiento lienzo HTML