2009-09-20 15 views
11

Używanie iTextSharp Próbuję wyrównać obraz tak, aby został osadzony w akapicie. Mogę to zrobić tak:Wyrównanie obrazu w tekście?

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

Ale obraz jest w prawym górnym rogu z tekstem otaczający go (niby jak L)

Co chcę to tekst będzie kilka akapitów następnie obraz z tekstem poniżej (coś w rodzaju C). Czy ktoś wie, jak bym to zrobił VIA iTextSharp?

Edit:

Próbowałem też

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")); 

Ale to był wyświetlany obraz na górze i na tekście poniżej. Nie było żadnego pliku tekstowego.

Odpowiedz

14

Obiekty Fraza i Akapit zachowują się inaczej. Spróbuj zmienić na:

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

To działało dla mnie w VB. (Musiałem zmienić wyrównanie obrazu do sumy wartości całkowitych dla ALIGN_RIGHT i TEXTWRAP, aby to działało poprawnie).

ALIGN_RIGHT = 2 
TEXTWRAP = 4 

Twoje zdjęcie zostało wyświetlone u góry strony, ponieważ było to pierwsze dodanie do dokumentu, a tekst został dodany po nim. Możesz przesunąć obraz, ustawiając jego bezwzględną pozycję lub dodając część tekstu do dokumentu, a następnie dodając obraz, a następnie dodając resztę tekstu.

+0

Dodanie części tekstu, a następnie obrazu, a następnie pozostałej części tekstu pracował. – Kyle