23

是否可以使用 iTextSharp 将句子中的单个单词加粗?我正在尝试将几个单独的单词加粗,而不必将字符串分成单独的短语。

我想要这种类型的输出

例如:取消的原因:参见本文件背面代码编号 1 指定的法定原因。

我的实际输出如下

例如:取消的原因:参见本文件背面代码编号 1 指定的法定原因。

代码

    pdftb4 = new PdfPTable(1);
    pdftb4.WidthPercentage = 100;
    width = new float[1];
    width[0] = 0.7F;
    pdftb4.SetWidths(width);

  pdfcel4 = new PdfPCell(new Phrase("\n REASON(S) FOR CANCELLATION: See Statutoryreason(s) designated by Code No(s) 1 on the reverse side hereof", docBlackFont10));
    pdfcel4.Border = 0;
    pdfcel4.HorizontalAlignment = Element.ALIGN_LEFT;
    pdftb4.AddCell(pdfcel4);
   objDocument.Add(pdftb4);

有人请帮帮我

4

3 回答 3

44

完成您正在尝试的方法是使用Chunks。一个简单的例子是:

var normalFont = FontFactory.GetFont(FontFactory.HELVETICA, 12);
var boldFont = FontFactory.GetFont(FontFactory.HELVETICA_BOLD, 12);

var phrase = new Phrase();
phrase.Add(new Chunk("REASON(S) FOR CANCELLATION:", boldFont));
phrase.Add(new Chunk(" See Statutoryreason(s) designated by Code No(s) 1 on the reverse side hereof", normalFont));
于 2012-04-18T16:31:38.540 回答
3

也可以创建类似的字体

Font verdanaBold = FontFactory.GetFont("Verdana", 7f, Font.BOLD);
于 2015-07-10T04:12:07.567 回答
0

也许这个链接在 iTextSharp 中使用富文本值加粗会有所帮助?

不确定它是否完全适合您的场景,但可能会让您到达您需要去的地方。

于 2012-04-18T16:14:36.547 回答