Ayuda con poner Texto Vertical

26/04/2010 - 23:38 por edcha | Informe spam
Gracias de antemano por responderme el asunto es que estos creando el
siguiente texto para imprimir:
string txt_Rect0 = "Número de diferentes clases nombradas y conducidas
durante el mes";

para ello creo el rectángulo donde se dibujara el texto.
Rectangle rect_Txt7 = new Rectangle (new Point(11.9f, 6.9f),
new Size (1.3f, 5.8f));

Ahora formateo el string asi
StringFormat str_Format1 = new StringFormat();
str_Format1.Trimming = StringTrimming.Word;
str_Format1.LineAlignment = StringAlignment.Center; //horizontal
plane
str_Format1.Alignment = StringAlignment.Center; //vertical plane
str_Format1.FormatFlags = StringFormatFlags.DirectionVertical;

pero al imprimirlo lo hace verticalmente pero segun lo veo yo al revez
pues lo imprime de la siguiente forma.
conducidas durante el mes
Número de diferentes clases nombradas y

Pero lo que quiero es que me lo imprima asi
Número de diferentes clases nombradas y
conducidas durante el mes

desde luego en la dirección vertical, obviamente no puedo escribirlo
aquí verticalmente pero imaginasen las dos formas que les puse en
formato vertical.

¿Existe alguna solución para esto? me imagino que sí pero soy nuevo y
necesito ayuda

Gracias

Preguntas similare

Leer las respuestas

#6 edcha
30/04/2010 - 05:05 | Informe spam
Muchas Gracias por tu recomendación a raíz de ella he solucionado el
problema y lo dejo aquí:

1º lo siguiente lo que hace es reconfigurar el punto de origen de
coordenadas x,y, este sera el nuevo punto de donde se partirá para
dibujar lo que se quiera
e.Graphics.TranslateTransform(point.X, point.Y);

2º se establece cuanto se quiere rotar tomando en cuenta que se gira
en 360º en mi caso para que sea vertical es 90º
e.Graphics.RotateTransform(90);

3º se crea un nuevo rectángulo tomando en cuenta que el punto x,y sera
en base a lo que se explico en el punto 1º
Rectangle rect = new Rectangle (new Point(0,0),
new Size ((int)txtPrt.Rec_Txt.Size.Height,
(int)txtPrt.Rec_Txt.Size.Width));

4º ahora se puede imprimir texto, rectángulos, lineas etc. tomando en
cuenta que se tiene que dar para cada uno la ubicación x,y
todo lo que se dibuje sera con la rotación que se presento en el
punto 2º
e.Graphics.DrawString(Text, font_Text, brush_Text, rect , StrFor_Txt);

5º por ultimo se debe terminar con esto pues de lo contrario todo lo
que se imprima seguirá siendo rotado.
//Resets the transformation
e.Graphics.ResetTransform();


Gracias por la ayuda y espero que esto le sea de utilidad a otros
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida