ItextSharp:将文本定位在循环中的页面上

时间:2013-01-14 20:00:15

标签: pdf loops position itextsharp absolute

我发现此代码可以在特定位置的页面上放置文本。

ColumnText ct = new ColumnText(cb);
Phrase myText = new Phrase("TEST paragraph\nNewline");
ct.SetSimpleColumn(myText, 34, 750, 580, 317, 15, Element.ALIGN_LEFT);
ct.Go();

现在我希望在forlooop中为一系列文本这样做。我有

columnText ct = new ColumnText(cb)
Phrase myText; int x = 34; int y = 750;
for(int i = 0; i<5; i++){
  myText = new Phrase("TEST paragraph\nNewline");
  ct.SetSimpleColumn(myText, x, y, 580, 317, 15, Element.ALIGN_LEFT);
  ct.Go();
  x += 10;
  y+= 12;
}

但是由于文档无法创建,这会给我一个错误。

我该怎么办呢?

1 个答案:

答案 0 :(得分:1)

尝试将对象创建移动到循环中:

//Declare ct
columnText ct;
Phrase myText; int x = 34; int y = 750;
for(int i = 0; i<5; i++){
  //Instantiate ct
  ct = new ColumnText(cb);
  myText = new Phrase("TEST paragraph\nNewline");
  ct.SetSimpleColumn(myText, 34, 750, 580, 317, 15, Element.ALIGN_LEFT);
  ct.Go();
  x += 10;
  y += 12;
}