因為iReport拉到快吐血
每一條線都要放大400倍來畫還不一定能對齊
只好用iText來
雖然程式碼多了很多行,而且看起來也不直覺
但開發速度比直接拉快多了
從此我也很痛恨程式碼自動產生的工具,醜醜的
所以當我從java轉.net
要畫PDF報表時我就放棄pdfsharp,直接用iTextSharp
除了有用過感到很親切之外
最重要的是,他的表格支援度比pdfsharp好多了
今天在畫報表時,順利畫完後開始做微調
要把一些文字置中真是搞死我
因為我已經寫了很多行類似下面的程式
tableBase.AddCell(new PdfPCell("我是內容"));
要改成置中的話還要全部抽出來變成下列這樣
PdfPCell aa = new PdfPCell("我是內容");
aa.VerticalAlignment = PdfPCell.ALIGN_CENTER;
aa.HorizontalAlignment = PdfPCell.ALIGN_CENTER;
tableBase.AddCell(aa);
喔天啊!! 我有幾十個PdfCell耶!!
轉個型好了,另外定義一個新的PdfCell,而且預設是置中
public class PdfPCellCenter : PdfPCell {
public PdfPCellCenter(Paragraph phrase):base(phrase) {
this.VerticalAlignment = PdfPCell.ALIGN_CENTER;
this.HorizontalAlignment = PdfPCell.ALIGN_CENTER;
}
}
之後把
tableBase.AddCell(new PdfPCell("我是內容"));
全部改成
tableBase.AddCell(new PdfPCellCenter("我是內容"));
搞定!!
沒有留言:
張貼留言