【问题标题】:TPPDF Table AlignmentsTPPDF 表格对齐方式
【发布时间】:2019-01-18 20:47:27
【问题描述】:

我正在尝试基于数据数组“tableData”创建一个表。

行数会有所不同。

要创建表格,您必须将“对齐”数据与数据匹配。

我无法创建仅包含 .left、.center 或 .right 变量的数组来匹配数据。它们不是 stings 或 ints 等......

那么如何将对齐行设置为等于数据行?

do {
        try table.generateCells(
            data:tableData,
            alignments: [
                [.center, .right, .right, .right],
                [.center, .right, .right, .right],
                [.center, .right, .right, .right],
                [.center, .right, .right, .right]
            ]
        )

    }

您似乎无法使用单个条目设置所有行。必须是行数匹配的数组。

https://github.com/Techprimate/TPPDF

谢谢。

【问题讨论】:

    标签: swift pdf


    【解决方案1】:

    我是 TPPDF 的创建者。

    在开发过程中,我设计的表格类似于 Microsoft Office Word 或 LibreOffice 等流行的文字处理软件,您可以在其中更改每个单元格的对齐方式。

    目前无法设置默认对齐方式,因此最简单的方法是将数据映射到对齐方式(就像您在代码示例中所做的那样)。

    如果你想要更短的语法,我可以建议:

    let tableData: [[String]] = [...] // This is your nested data
    let alignments = tableData.map { $0.map { _ in PDFTableCellAlignment.right }}
    

    我们始终对新功能和增强功能持开放态度,请随时使用默认对齐值创建问题甚至更好的实现,并在 Github 上提出拉取请求。

    【讨论】:

    • 太棒了,我有一些我想看的东西。会尽我所能提供帮助!谢谢!
    【解决方案2】:

    我认为这行得通。也许有人有更好的方法?

    使用“PDFTableCellAlignment”设置对齐数组允许我设置 .right、.left、.center 变量。

        var tableData = [[String]]()
    
        var align = [[PDFTableCellAlignment]]()
    
        for item in self.d!{
    
            let c = [ .... ]
            tableData.append(c)
    
            align.append([.right, .right, .right, .right])
    
        }
    

    期待其他人的想法。

    谢谢。

    【讨论】:

      猜你喜欢
      • 2015-10-25
      • 1970-01-01
      • 1970-01-01
      • 2021-01-15
      • 2013-04-18
      • 1970-01-01
      • 1970-01-01
      • 2013-05-02
      • 1970-01-01
      相关资源
      最近更新 更多