跳转到主要内容
该对象用于访问表格块的特定属性。ITableBlock 接口派生自 IBlock 接口,并继承其所有属性。 此类型块的区域只能包含一个矩形。表格结构由两组表格分隔线集合 (水平和垂直,即 HSeparators 和 VSeparators 属性) 以及一个表格单元格集合 (Cells 属性) 描述。每个表格单元格都被视为某种类型的块。表格中的行数 (列数) 等于水平 (垂直) 分隔线的数量减 1。 已识别文本是单个单元格的属性,而不是整个表格的属性。要访问表格块的已识别文本,请按以下步骤操作:
  1. 使用 Cells 属性获取表格单元格集合。
  2. 选择所需的单元格。使用 TableCells 对象的方法。
  3. 获取该单元格的块对象 (ITableCell::Block 属性) 。
  4. 检查该块的类型是否为 BT_Text (IBlock::Type 属性) ,并使用 IBlock::GetAsTextBlock 方法获取 TextBlock 对象。
  5. 使用 ITextBlock::Text 属性。

属性

名称类型描述
CellsTableCells, 只读用于访问表格块的单元格集合。该集合始终至少包含一个单元格,即使表格中没有表格分隔线也是如此。集合中的单元格按逻辑阅读顺序排列。
HSeparatorsTableSeparators, 只读用于访问表格块的水平分隔线集合。该集合始终至少包含两条分隔线,分别对应表格块的顶部和底部。
VSeparatorsTableSeparators, 只读用于访问表格块的垂直分隔线集合。该集合始终至少包含两条分隔线,分别对应表格块的左边界和右边界。

方法

名称描述
FindBaseCellFromPoint用于根据图像上的像素点查找其在基准网格中的单元格位置。这里的基准网格是指由表格边框和分隔线构成的网格。每条垂直分隔线都会使水平坐标增加一,每条水平分隔线都会使垂直坐标增加一。坐标轴的方向分别为从左到右和从上到下。
InitializeGrid初始化该表格块的表格网格。

Windows

TableBlock

Linux 和 macOS

TableBlockLinuxMac 对象图

输出参数

此对象是Block对象的GetAsTableBlock方法的输出参数。

示例

FREngine.IBlock block;
// 获取表格单元格块
if (block.Type == FREngine.BlockTypeEnum.BT_Table)
{
 FREngine.ITableBlock tableBlock = block.GetAsTableBlock();
 for (int iCell = 0; iCell < tableBlock.Cells.Count; iCell++)
 {
  FREngine.IBlock cell = tableBlock.Cells[iCell].Block;
  // 对单元格块执行某些操作
 }
}
该对象用于以下代码示例:

另请参阅

Block 处理 Layout 和 Block 处理 Text 处理属性