Выравнивание изображений в тексте?
Используя iTextSharp, я пытаюсь выровнять изображение так, чтобы оно было встроено в абзац. Я могу сделать это следующим образом:
iTextSharp.text.Image image;
image.Alignment = Image.ALIGN_RIGHT | Image.TEXTWRAP;
document.Add(image);
document.Add(new Paragraph("Large string of text goes here"));
Но изображение выходит в верхнем правом углу с окружающим его текстом (вроде L)
Я хочу, чтобы текст представлял собой несколько абзацев, а затем изображение с текстом под ним (вроде как C). Кто-нибудь знает, как я буду делать это VIA iTextSharp?
Edit:
Я также пробовал
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"));
Но он был отображен с изображением вверху и текстом под ним. В действительности не было текстовой ленты.
Ответы
Ответ 1
Фраза и объекты абзаца ведут себя по-разному. Попробуйте изменить на:
image.Alignment = 6;
document.Add(image);
document.Add(new Phrase("Large string of text goes here"));
Это работало для меня в VB. (Мне нужно было изменить выравнивание изображения на сумму целочисленных значений для ALIGN_RIGHT и TEXTWRAP, чтобы это нормально работало).
ALIGN_RIGHT = 2
TEXTWRAP = 4
Ваше изображение было отображено в верхней части страницы, потому что это было первое, что было добавлено в документ, и после него текст был добавлен.
Вы можете переместить изображение вниз, установив его абсолютное положение или добавив часть текста в документ, затем добавив изображение, а затем добавив остальную часть текста.