0

ItextSharp 5.0.5 を使用して PDF を作成しています

次のコードを使用

1)

var _with1 = underContent;
_with1.SaveState();
_with1.SetGState(gstate);
_with1.SetColorFill(color);
_with1.BeginText();
_with1.SetFontAndSize(font, txt_Font2);
_with1.SetTextMatrix(30, 30);

//**1**//

_with1.ShowTextAligned(Element.ALIGN_CENTER, watermarkText, txt_X2, txt_Y2, txt_Rotat2);

//**1**//

_with1.EndText();
_with1.RestoreState();

2)

//**2**//

ColumnText.ShowTextAligned(_with1, Element.ALIGN_CENTER, new Phrase(new Chunk(watermarkText, FontFactory.GetFont(@"C:\WINDOWS\Fonts\" + FntNm + ".TTF", txt_Font2, 0))), txt_X2, txt_Y2, txt_Rotat2);

//**2**//

次のエラーが発生//**1**//しています//**2**//

エラー

// 2 //を使用して、iTextsharp の BaseFont でサポートされていない UNDERLINE を生成する必要があります

助けてください!!

4

1 に答える 1

2

テキストオブジェクトをネストしています! それは違法です。最近の iTextSharp バージョンでは、この問題について警告されます。

結論: 少なくとも次の行を削除する必要があります。

_with1.BeginText();
_with1.SetFontAndSize(font, txt_Font2);
_with1.SetTextMatrix(30, 30);
_with1.EndText();

メソッドを使用する全体的な考え方は、ColumnText(私の本の第 3 章で説明したように) テキスト オブジェクトを自分で作成することを心配する必要がないということです。

于 2013-09-10T15:34:13.207 に答える