0

私は itextsharp から始めていますが、構築後にフレーズのフォントを設定すると機能しない理由があるかどうか疑問に思っています。何か理由がありますか?

 iTextSharp.text.Font f = PdfFontFactory.GetComic();
 f.SetStyle(PdfFontStyle.BOLD);
 Color c = Color.DarkRed;
 f.SetColor(c.R,c.G,c.B);
 f.Size = 20;
 Document document = new Document();
 try
 {
    PdfWriter.GetInstance(document, new System.IO.FileStream("PhraseTest.pdf",   FileMode.Create));
    document.SetPageSize(PageSize.A4);
    document.Open();
    Phrase titreFormules = new Phrase("Nos formules",f); //THIS WORKS
    // titreFormules.Font = f; // THIS DOESN'T WORK!
    document.Add(titreFormules);
    document.Close();
4

1 に答える 1

2

これは私の本に記載されています。

  • Aは、a 内のすべてのテキストが同じフォント ファミリ、フォント サイズ、フォント色などを持つChunkという意味で、テキストのアトミック パーツです。Chunk
  • APhraseChunkオブジェクトのコレクションであるためPhrase、さまざまなフォントを使用したさまざまな「原子」のテキストを含むことができます。

あなたの例"Nos formules"ではHelveticaで書かれます。テキスト付きの Helveticaをに追加したでフォントを変更します。他に何も追加していないため、フォント「Comic」は使用されません。Chunk"Nos formules"PhrasetitreFormules

これは、質問iText - PdfPTable does not show Cyrillic(Russian) symbolsに答えたときに意味したことでもあります。

を使用するsetFont()と、フォントの設定Phraseに追加されたすべてのコンテンツのフォントが変更されます。

于 2014-09-12T06:57:03.627 に答える