跳轉到主要內容
此物件可讓您存取表格區塊的特定屬性。ITableBlock 介面衍生自 IBlock 介面,並繼承其所有屬性。 此型別區塊的區域只能由一個矩形組成。表格結構是由兩個表格分隔符集合 (水平與垂直,也就是 HSeparators 和 VSeparators 屬性) 以及一個表格儲存格集合 (Cells 屬性) 所描述。每個表格儲存格都會視為某種類型的區塊。表格中的列數 (欄數) 等於水平 (垂直) 分隔符的數量減 1。 已辨識文字是單一儲存格的屬性,而不是整個表格的屬性。若要存取表格區塊的已辨識文字,您應執行下列步驟:
  1. 使用 Cells 屬性取得表格儲存格集合。
  2. 選取所需的儲存格。請使用 TableCells 物件的方法。
  3. 取得該儲存格的區塊物件 (ITableCell::Block 屬性) 。
  4. 檢查該區塊是否為 BT_Text 型別 (IBlock::Type 屬性) ,然後使用 IBlock::GetAsTextBlock 方法取得 TextBlock 物件。
  5. 使用 ITextBlock::Text 屬性。

屬性

NameTypeDescription
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 處理文字 使用屬性