3

以下に示すように、各列に独自の配置があるテーブルを作成しています。セルレベルではなく列レベルでそれを達成するにはどうすればよいですか?

ここに画像の説明を入力

4

1 に答える 1

4

iText と iTextSharp は、列のスタイルと書式設定をサポートしていません。これを行う唯一の方法は、現在行っているように、セルごとに行うことです。

編集

最も簡単な回避策は、共通のプロパティを設定するヘルパー メソッドを作成することです。これらは、拡張メソッドまたは通常のメソッドを介して実行できますstatic。目の前に C# IDE がないので、以下のサンプル コードは VB ですが、かなり簡単に翻訳できるはずです。

アライメントごとにいくつかのクイック メソッドを作成できます。

Public Shared Function CreateLeftAlignedCell(ByVal text As String) As PdfPCell
    Return New PdfPCell(New Phrase(text)) With {.HorizontalAlignment = PdfPCell.ALIGN_LEFT}
End Function
Public Shared Function CreateRightAlignedCell(ByVal text As String) As PdfPCell
    Return New PdfPCell(New Phrase(text)) With {.HorizontalAlignment = PdfPCell.ALIGN_RIGHT}
End Function
Public Shared Function CreateCenterAlignedCell(ByVal text As String) As PdfPCell
    Return New PdfPCell(New Phrase(text)) With {.HorizontalAlignment = PdfPCell.ALIGN_CENTER}
End Function

または、既知の定数の 1 つに渡す必要がある 1 つのみ:

Public Shared Function CreatePdfPCell(ByVal text As String, ByVal align As Integer) As PdfPCell
    Return New PdfPCell(New Phrase(text)) With {.HorizontalAlignment = align}
End Function

次に、次のことを実行できます。

Dim T As New PdfPTable(3)
T.AddCell(CreateCenterAlignedCell("Hello"))
于 2011-08-02T21:29:10.610 に答える