Usuario
Como calcular el ancho del bitmap segun la altura de la letra

Pregunta
-
Hola, estoy intentando hacer una aplicacion en la cual tengo que meter texto en un picturebox, la altura de este texto varia segun el
tamaño de la fuente y lo que no se como hacer es como calcular el tamaño que va a ocupar este texto en drawbitmap. Supuestamente seria
el ancho del font * el numero de lineas, pero esto no es asi, no se como calcular lo que me ocupara todo el texto.... me imagino que
tambien habrá que calcular el espacio de la interline, pero esto no se como se hace.
el codigo es este:
'el texto lo introduzco en un formulario con un richtextbox
'y en otro formulario tengo el panel y el pictureboxPanel1.Width = Form1.Richtextbox1.Width
' Poner el ancho del picturebox multiplicando el font.height del texto por el numero de lineas
Dim AnchoPicture As Integer = (Form1.Richtextbox1.Font.Height * numlineas - 1)Panel1.Height = Form1.Richtextbox1.Height + AnchoPicture
drawbitmap = New Bitmap(Form1.Richtextbox1.Width, Form1.Richtextbox1.Height + AnchoPicture)
graph = Graphics.FromImage(drawbitmap)
PictureBox1.Image = drawbitmap
graph.SmoothingMode = Drawing2D.SmoothingMode.HighQuality
'escribir el texto en Picturebox
graph.DrawString(TextoGrafico, Form1.Richtextbox1.Font, Brushes.White, PictureBox1.Location)
Todas las respuestas
-
-
Hola, he utilizado esto:
DimrichtexboxSize AsSize= TextRenderer.MeasureText(Form1.richtexbox1.text, Form1.richtextbox1.Font)
AltoSize=richtexbox.Height pero esto no me da la medida correcta de la fuente pues cuando lo utilizo en el picturebox no me coincide. Quisiera utilizar Graphics.MeasureString(), pero si cambio "textrender" por graphics.measurestring() me da un error. Solo he conseguido que me funcione utilizando esto en el evento "PictureBox1_Paint". Mi pregunta es: ¿No puedo desde el mismo sitio donde hago textrender poner graphics.measure?. yo solo quiero que me de la medida correcta de lo que ocupara la fuente elegida y el tamaño elegido en un picturebox.
-
Decir "me da un error" y no mostrar el error es contraproducente. Detállenos el error en su respuesta para poder ayudarle. Incluya el código en cuestión para poder tener el contexto del error e indíquenos en qué línea aparece el error.
Jose R. MCP
Code Samples