iTextSharp рисует линию под текстом (заголовком) в произвольном месте на странице - PullRequest
4 голосов
/ 16 июня 2011

Кто-нибудь знает, как я могу нарисовать линию под заголовком (короткая линия жирного текста), который может быть расположен в произвольном месте на странице.

, например

My Heading 1
---------------------------------------------- 

Some random paragraph


My Heading 2
----------------------------------------------

Я могу сделать это, как я делал выше, используя строку Underscores _ , но для того, чтобы получить строку где-нибудь рядом с заголовком, я должен установить размер шрифта на 2, что приведет к пятнистому уродливому линия.

Я также могу добавить два фрагмента поверх друг друга (один с заголовком, а другой с _ ), аналогично первому примеру в этой статье http://www.mikesdotnetting.com/Article/82/iTextSharp-Adding-Text-with-Chunks-Phrases-and-Paragraphs, используя тот же размер шрифта но кажется, что это работает только в верхней части страницы, как только я добавляю другие абзацы и пытаюсь сделать это посередине страницы, две части разделяются с четким разрывом строки в конце первой части.

Кажется, вы можете рисовать линии в iTextSharp, но я не знаю, как рассчитать координаты, так как все примеры, которые я видел, используют этот метод для размещения линии вверху или внизу страницы в фиксированном месте.

Любая помощь с благодарностью.

Приветствие Rob

Ответы [ 2 ]

8 голосов
/ 24 июня 2011

Возможно, вам нужен объект LineSeperator.Оберните его куском и положите туда, где вам нужно.

Вот разделитель строки образца:

Chunk linebreak = new Chunk(new LineSeparator(4f, 100f, colorGrey, Element.ALIGN_CENTER, -1));
doc.Add(linebreak);
6 голосов
/ 09 января 2012

Я знаю, что это старый пост, но, возможно, это кому-нибудь поможет.

//Create Chunk for underline
Chunk chkHeader = new Chunk("My Title", fnt13Bold);
chkHeader.SetUnderline(1f, -2f);
//Add Chunk to paragraph
Paragraph pHeader = new Paragraph(chkHeader);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...