2009-09-20 42 views
11

Uso de iTextSharp Estoy tratando de alinear una imagen para que se incruste en un párrafo. Puedo hacerlo de esta manera:¿Alineación de imagen en el texto?

iTextSharp.text.Image image; 
image.Alignment = Image.ALIGN_RIGHT | Image.TEXTWRAP; 
document.Add(image); 
document.Add(new Paragraph("Large string of text goes here")); 

Pero la imagen que sale en la parte superior derecha con el texto que lo rodea (algo así como una L)

Lo que quiero es el texto a ser unos pocos párrafos luego la imagen con el texto debajo (como una C). ¿Alguien sabe cómo lo haría VIA iTextSharp?

Editar:

También trató

iTextSharp.text.Image image; 
image.Alignment = Image.ALIGN_RIGHT | Image.TEXTWRAP | Image.ALIGN_MIDDLE; 
document.Add(image); 
document.Add(new Paragraph("Large string of text goes here")); 

Pero fue representada con la imagen en la parte superior y el texto debajo de ella. No hubo envoltura de texto en efecto.

Respuesta

14

Los objetos Frase y Párrafo se comportan de manera diferente. Intente cambiar a:

image.Alignment = 6; 
document.Add(image); 
document.Add(new Phrase("Large string of text goes here")); 

Esto funcionó para mí en VB. (Tuve que cambiar la alineación de la imagen a la suma de los valores enteros para ALIGN_RIGHT y TEXTWRAP para que esto funcione correctamente).

ALIGN_RIGHT = 2 
TEXTWRAP = 4 

Su imagen se visualiza en la parte superior de la página, ya que fue el primero que añade al documento, y se añadió el texto después de ella. Puede mover la imagen hacia abajo estableciendo su posición absoluta o agregando algo de su texto al documento, luego agregue la imagen y luego agregue el resto del texto.

+0

Agregando parte del texto, luego la imagen, luego el resto del texto funcionó. – Kyle

Cuestiones relacionadas