我在列表中显示一些内容,以便在pdf文件中显示。
每件事情都很好,但现在我想要一个列表项中的一些文字应该是大胆的。
例如:
这是 ListItem Bold 文字。
我该怎么做?
这是我的代码:
List lst_note = new List(List.ORDERED);
lst_note.IndentationLeft = 10f;
lst_note.Add(new iTextSharp.text.ListItem("This single **word** should be Bold", FontFactory.GetFont(FontFactory.TIMES_ROMAN, 10)));
disclaimer.Add(lst_note);
修改
我试过这个:
Font bold = new Font(FontFactory.GetFont(FontFactory.TIMES_BOLD, 10, Font.BOLD));
lst_terms.Add(new iTextSharp.text.ListItem("Some Text "+ new Chunk("this should bold", bold), FontFactory.GetFont(FontFactory.TIMES_ROMAN, 10)));
但这没效果
答案 0 :(得分:2)
您可以使用Paragraph
和Chunks
执行此操作,如下所示:
Chunk c1 = new Chunk("This single", new Font(iTextSharp.text.Font.FontFamily.TIMES_ROMAN, 10, Font.NORMAL, BaseColor.BLACK)));
Chunk c2 = new Chunk("word", new Font(iTextSharp.text.Font.FontFamily.TIMES_ROMAN, 10, Font.BOLD, BaseColor.BLACK)));
Chunk c3 = new Chunk("should be Bold", new Font(iTextSharp.text.Font.FontFamily.TIMES_ROMAN, 10, Font.NORMAL, BaseColor.BLACK)));
Paragraph p2 = new Paragraph();
p2.Add(c1);
p2.Add(c2);
p2.Add(c3);
List lst_note = new List(List.ORDERED);
lst_note.IndentationLeft = 10f;
lst_note.Add(new iTextSharp.text.ListItem(p2);
disclaimer.Add(lst_note);
答案 1 :(得分:1)
请看一下这个问题的答案:How can I use regular and bold in a single String?
答案是关于Paragraph
,但它也适用于ListItem
,因为ListItem
是Paragraph
的子类:
Font regular = new Font(FontFamily.HELVETICA, 12);
Font bold = Font font = new Font(FontFamily.HELVETICA, 12, Font.BOLD);
ListItem li = new ListItem("NAME: ", bold);
li.Add(new Chunk("regular", regular));
您可以根据需要使用尽可能多的不同字体添加尽可能多的Chunk
个对象。