solidbrush library form example c# .net graphics user-controls gdi+

library - windows forms c# draw line



Graphics.DrawString cortar a mitad de palabra (2)

He creado un control de usuario que es básicamente un botón con algunas características pequeñas y agradables.

Una de esas características es que determina el tamaño de fuente más grande posible para el texto, mientras mantiene el texto dentro de los límites del cuadro.

Esto funciona bien en la mayoría de los casos, pero a veces corta una palabra a la mitad para que quepa.

Entonces podría aparecer como ...

stackov erflow

Más bien que

stackoverflow

(pero en una fuente más pequeña)

Pensé que habría sido un StringFormatFlag para permitirme especificar cómo se hace el ajuste de palabras.

Quiero envoltura de palabras, pero no envoltura de ''personaje''.

Gracias Rich.


Puede intentar usar TextRenderer en su lugar:

TextRenderer.DrawText(e.Graphics, "", this.Font, new Rectangle(10, 10, 32, 32), Color.Black, Color.Empty, TextFormatFlags.WordBreak | TextFormatFlags.VerticalCenter | TextFormatFlags.HorizontalCenter); TextRenderer.DrawText(e.Graphics, "", this.Font, new Rectangle(50, 10, 32, 32), Color.Black, Color.Empty, TextFormatFlags.WordBreak | TextFormatFlags.VerticalCenter | TextFormatFlags.HorizontalCenter);