• com.itextpdf.text.PdfPTable & PdfPCell


    Demo

    • 注意:表格中的列必须填满,否则表格不显示。
    PdfPTable table = new PdfPTable(3)
    // 设置表格的填充宽度百分比,在当前 Table 和其父级的左右宽度微调的时候使用。
    table.setWidthPercentage(95)  // 宽带95填充,左右流出一点点空间出来。
    
    // 表格与其上边和下边元素的间隔
    table.setSpacingBefore(10f)   // 前间距
    table.setSpacingAfter(10f)    // 后间距
    
    // 默认一个单元个如果在当前页显示不下,就会整个移动到下一个页面,如下设置会分割单元格到两个页面上。
    table.setSplitLate(false)     // 表格跨页显示需要设置1
    table.setSplitRows(true)      // 表格跨页显示需要设置2
    
    
    // 设置每个单元格的相对的 Width,这里有个技巧就是把所有列占用的空间比作 1,想让每个列占多大的位置,这里就分成对应的值就行,最终相加等于1即可。
    float[] columnWidths = [0.2f, 0.2f, 0.6f]
    table.setWidths(columnWidths)

    PdfPCell

    • 注意行间距:例如 9 磅字体setLeading(1.5f, 1.5f),第一行坐标在(10,10)开始,第二行则在(1.5 + 1.5*10,10)处开始,两行会间隔 6.5(16.5 - 9)磅的空白,Word也是这样的计算方式。
    PdfPCell cell = new PdfPCell(new Paragraph("企业名称:" + companyName, customFont.font12))
    // 设置 comumn 的最小 Height
    cell.setMinimumHeight(30)
    // 设置垂直对其方式
    cell.setHorizontalAlignment(Cell.ALIGN_LEFT)
    // 设置水平对其方式
    cell.setVerticalAlignment(Cell.ALIGN_MIDDLE)
    // 合并列
    cell.setColspan(3)
    // 设置边框宽度
    cell.setBorderWidth(0.5f)
    // 设置单元格内文字的行间距,第一个参数是固定间距,第二个参数是成倍的间距:1.5磅 + 1.5 * 此行最大字体的磅数
    cell.setLeading(1.5f, 1.5f)
    // 设置单元格内四周边距,也可以单独设置每边的边距,默认边距是 2
    cell.setPadding(15)
    // 去掉右边边框
    cell.setBorderWidthRight(0)
    // 去掉外层边框
    cell.setBorder(0)
    // 合并行
    cell1.setRowspan(4)
    // 单元格的水平垂直居中设置
    cell1.setUseDescender(true)
    cell1.setHorizontalAlignment(Element.ALIGN_CENTER)
    cell1.setVerticalAlignment(Element.ALIGN_MIDDLE)
    // 添加到 Table
    table.addCell(cell)
    
  • 相关阅读:
    day35
    Audio Unit 基础
    Audio Unit 介绍
    音频PCM编码
    iOS libyuv
    FFmpeg AVPacket
    FFmpeg AVCodec
    FFmpeg编译iOS静态库
    iOS-Cocoapods更新不及时
    iOS-读取txt文件中文乱码
  • 原文地址:https://www.cnblogs.com/duchaoqun/p/13689402.html
Copyright © 2020-2023  润新知