TPPDF :在 Table() 的同一单元格中添加多个包含文本内容的图像



我正在开发一个PDF Builder应用程序,并完成了本教程。

有没有办法在具有多个图像的单元格中添加一些文本。我尝试了不同的方法,但它导致 PDF 中的错误。

我试过这个:

      let table = PDFTable()
        
            let str = String(format: "Lorem Ipsum is simply dummy text of the printing and typesetting industry.")
            let str1 = String(format: "Lorem Ipsum is simply dummy text of the printing and typesetting industry. nLorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. nnIt has survived not only five centuries, but also the leap into electronic typesetting, remaining essentially unchanged. ")
    
            do {
                try table.generateCells(
                    data:[
                        ["Name", "Image", "Description"],
                        [project.name + "n" +  project.address1, UIImage(named: "demo")!, str],
                        [project.name + "n" +  project.address1, UIImage(named: "demo")!, str1]
                        ],
                    alignments: [
                    [.topLeft, .top, .top],
                    [.topLeft, .top, .top],
                    [.topLeft, .top, .top]
                        ])
                } catch PDFError.tableContentInvalid(let value) {
                    // In case invalid input is provided, this error will be thrown.
                    print("This type of object is not supported as table content: " + String(describing: (type(of: value))))
                } catch {
                    // General error handling in case something goes wrong.
                    print("Error while creating table: " + error.localizedDescription)
                }
    
    table.widths = [
               0.23, 0.30, 0.47
           ]
    
        let style = PDFTableStyleDefaults.simple
    table.style = style
    
    do {
        // Style each cell individually
        try table.setCellStyle(row: 1, column: 0, style: PDFTableCellStyle(colors: (fill: UIColor.lightGray, text: UIColor.black)))
        try table.setCellStyle(row: 1, column: 1, style: PDFTableCellStyle(colors: (fill: UIColor.lightGray, text: UIColor.black)))
        try table.setCellStyle(row: 1, column: 2, style: PDFTableCellStyle(colors: (fill: UIColor.lightGray, text: UIColor.black)))
        try table.setCellStyle(row: 2, column: 0, style: PDFTableCellStyle(colors: (fill: UIColor.lightGray, text: UIColor.black)))
        try table.setCellStyle(row: 2, column: 1, style: PDFTableCellStyle(colors: (fill: UIColor.lightGray, text: UIColor.black)))
        try table.setCellStyle(row: 2, column: 2, style: PDFTableCellStyle(colors: (fill: UIColor.lightGray, text: UIColor.black)))
    } catch PDFError.tableIndexOutOfBounds(let index, let length){
        // In case the index is out of bounds
        print("Requested cell is out of bounds! (index) / (length)")
    } catch {
        // General error handling in case something goes wrong.
        print("Error while setting cell style: " + error.localizedDescription)
    }
    table.padding = 1.0
    table.margin = 2.0
    
    table.showHeadersOnEveryPage = true
    
    document.add(table: table)

我怎样才能找到解决方法?

很抱歉没有早点回复(不知何故我没有收到通知(。

  1. 尝试在表格单元格内使用组。
  2. 尝试新的表 api 和逻辑(仍在开发中,请参阅分支 develop (,如果这仍然不能解决您的问题,请打开一个新问题。请为我提供一个代码示例项目,以重现您的用例。

相关内容

  • 没有找到相关文章

最新更新