【问题标题】:Bold a single word within a sentence with iTextSharp使用 iTextSharp 将句子中的单个单词加粗
【发布时间】:2012-04-30 02:11:26
【问题描述】:

是否可以使用 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);

谁来帮帮我

【问题讨论】:

    标签: c# itextsharp


    【解决方案1】:

    完成您正在尝试的方法是使用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));
    

    【讨论】:

    • var boldFont = FontFactory.GetFont(FontFactory.HELVETICA, 12, Font.BOLD); 因为你想要相同字体的不同风格。
    【解决方案2】:

    也可以创建类似字体

    Font verdanaBold = FontFactory.GetFont("Verdana", 7f, Font.BOLD);
    

    【讨论】:

    • 这如何适应 OP 的代码 sn-p 的范围?
    【解决方案3】:

    也许这个链接Bolding with Rich Text Values in iTextSharp 会有所帮助?

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-01-12
      • 2014-08-23
      • 2020-04-16
      • 2015-12-13
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多