我目前正在使用iText進行.pdf生成。我的一種方法是創建,格式化並將單元格添加到Table對象中,但對於這個特定的表格,有許多單元格(20-30),並且方法本身已經大大增加。iText:如何重構代碼以避免在方法中使用多個addCell
方法的結構如下:
/*create cells*/
Cell c1 = new Cell(new Paragraph("text1", textFont));
//...and so on for 20+ cells
/*format cell with custom method formatCell()*/
formatCell(c1, false);
//...and so on for 20+ cells
/*add cells to table object*/
table1.addCell(c1);
//...and so on again for 20+ cells
有沒有一種方法,我可以將細胞添加到表中沒有addCell語句流?
編輯:我應該提到過(道歉)是formatCell將採取將在改變每個小區
使用列表或數組? – 2014-12-03 17:10:27
你甚至需要以後訪問它們嗎?如果沒有,爲什麼甚至把他們列入清單?只需爲20+迭代進行循環,並在循環體內創建一個單元格,對其進行格式化並將其添加到表中。這假定創建,格式化和添加到表格都可以一次對每個單元格發生,而不需要像現在這樣在同一時間對所有單元格執行每個步驟。 – ajp15243 2014-12-03 17:14:44
根據你的編輯,你將需要添加細節(或者自己調整已經給出的解決方案),以確定如何確定創建'段落'和'formatCell'的布爾值所要傳遞的值,假設它們對於不同的細胞都是不同的。 – ajp15243 2014-12-03 17:18:41