2012-11-05 38 views
1

我正在使用iTextSharp和CSharp創建pdf.I創建很多表格。所以我需要將每張表格放在不同的位置。如何設置由iTextSharp生成的pdf表格的起始位置?

可能嗎?

+1

對不起。我不知道是什麼屬性來設置表的位置。我使用totalwidth屬性的表寬度,然後有屬性爲水平alignment.But我需要設置表中的x,y位置的pdf? – Giri

回答

2

我用這個代碼,因爲原來的pdfptable自動化它的位置:

 Private mywriter As PdfWriter 
     Dim Theight = Table.CalculateHeights 
     Dim DirectC As PdfContentByte = mywriter.DirectContent 
     Dim templ = DirectC.CreateTemplate(Table.TotalWidth, Theight) 
     Table.WriteSelectedRows(0, -1, 0.0F, Theight, templ) 
     Dim myimage = Image.GetInstance(templ) 

     Dim CenterH = (Doc.Top + Doc.BottomMargin)/2 

     Dim NewPosH = CenterH - myimage.Height/2 

     Dim CenterW = mywriter.PageSize.Width/2 
     Dim NewPosW = CenterW - myimage.Width/2 

     myimage.SetAbsolutePosition(NewPosW, NewPosH) 
     DirectC.AddImage(myimage) 

該編碼位置的表在頁面的中間。注意:座標系在左下方開始,而不是在左上方。 它的vb.net代碼,但適應不應該太難。

+0

Thanks.It工程.. – Giri

+0

一個額外的警告:您可能需要設置表列寬度,或計算寬度將無法正常工作...所以我明白貧窮的「文檔」... –

+0

是啊我設置寬度。 – Giri

相關問題