Foxit PDF SDK
FSReadingOrder Class Reference
Inheritance diagram for FSReadingOrder:
FSBase

Instance Methods

(FSRectFArray *) - addOrderDataForRect:rect:
 Add order data for selected rect.
More...
 
(BOOL) - applyReadingOrder:selected_rect:
 Apply reading order to the specified page based on the given selected rectangle area(s).
More...
 
(BOOL) - canMoveDataOrder:select_info_array:dest_move_item:
 Check whether data order can be moved.
More...
 
(FSReadingOrderTableSelectResult) - canSelectTableCellAtPoint:point:
 Check whether a table cell can be selected on mouse down at the given point.
More...
 
(void) - clearPageStructInfo:
 Clear page structure info.
More...
 
(int) - deleteOrderDataStructInfo:src_order_index_array:is_loaded:
 Delete order data structure info.
More...
 
(BOOL) - drawReadingOrderItems:
 Draw reading order items for a specified page.
More...
 
(BOOL) - endEditTable
 End edit table.
More...
 
(BOOL) - generateTableHeaderIDs
 Generate table header IDs.
More...
 
(NSArray< NSData * > *) - getAllLeafChildrenByContentItemID:content_item_id:
 Get all leaf children by content item ID.
More...
 
(FSContentTreeItemArray *) - getContentTree
 Get content tree.
More...
 
(NSArray< NSString * > *) - getCurrentTableHeaderIDs
 Get the array header ID of current table.
More...
 
(FSTreeItemArray *) - getReadingOrderTreeItems
 Get reading order tree items.
More...
 
(FSTableCellAttributeArray *) - getSelectedTableCellAttributes
 Get selected table cell attributes.
More...
 
(NSString *) - getTableSummary:
 Get table summary.
More...
 
(BOOL) - hasHeaderID:
 Check whether current table header ID is existing.
More...
 
(BOOL) - hasMissingHeaderIDs
 Check whether current table is missing header IDs.
More...
 
(id) - initWithOther:
 Constructor, with another reading order object.
More...
 
(id) - initWithPdf_doc:
 Constructor.
More...
 
(BOOL) - isEditingTable
 Check whether table editing has started.
More...
 
(BOOL) - isEmpty
 Check whether current object is empty or not.
More...
 
(int) - moveOrderData:src_order_index_array:dest_order_index:
 Move data order.
More...
 
(FSRectFArray *) - removeOrderDataForRect:rect:
 Remove order data for selected rect.
More...
 
(BOOL) - selectTableAtPoint:point:
 Select the table at the specified point on a page, if any.
More...
 
(FSReadingOrderTableSelectResult) - selectTableCellAtPoint:point:region_selected:appended:
 Select table cell by point on mouse up.
More...
 
(FSReadingOrderTableSelectResult) - selectTableCellAtRect:rect:region_selected:appended:
 Select table cell by rect on mouse up.
More...
 
(BOOL) - setOrderTypeForSelectedContent:
 Set order type for selected content.
More...
 
(BOOL) - setOrderTypeForSelectedTreeItems:select_info_array:
 Set order type for selected tree items.
More...
 
(void) - setReadingOrderOptions:
 Set reading order options.
More...
 
(BOOL) - setSelectedTableCellAttributes:change_id_enabled:need_change_ids:
 Set selected table cell attributes.
More...
 
(BOOL) - setTableSummary:table_summary:
 Set table summary.
More...
 
(BOOL) - startEditTable:
 Start edit table.
More...
 
(BOOL) - startEditTableAtPoint:point:
 Start editing the table located at the specified point on a page, if any.
More...
 
(void) - synchronizeTable
 Synchronize table.
More...
 

Detailed Description

This class represents a reading order for PDF document accessibility reading order operations. Before using any class or methods in this module, please ensure Foxit PDF SDK has been initialized successfully by function FSLibrary::initialize:key: with a key including "Accessibility" module.

See also
FSLibrary

Method Documentation

◆ addOrderDataForRect:rect:()

- (FSRectFArray *) addOrderDataForRect: (int)  page_index
rect: (FSRectF*)  rect 

Add order data for selected rect.

Parameters
[in]page_indexThe page index. Valid range: from 0 to (count-1). count is returned by function FSPDFDoc::getPageCount.
[in]rectThe selected rect.
Returns
The updated order rect array.

◆ applyReadingOrder:selected_rect:()

- (BOOL) applyReadingOrder: (int)  page_index
selected_rect: (FSRectFArray*)  selected_rect 

Apply reading order to the specified page based on the given selected rectangle area(s).

Parameters
[in]page_indexThe page index. Valid range: from 0 to (count-1). count is returned by function FSPDFDoc::getPageCount.
[in]selected_rectThe array of selected rects which define the area(s) to be used for applying reading order.
Returns
YES means success, while NO means not.

◆ canMoveDataOrder:select_info_array:dest_move_item:()

- (BOOL) canMoveDataOrder: (int)  page_index
select_info_array: (FSTreeItemInfoArray*)  select_info_array
dest_move_item: (FSTreeItemInfo*)  dest_move_item 

Check whether data order can be moved.

Parameters
[in]page_indexThe page index. Valid range: from 0 to (count-1). count is returned by function FSPDFDoc::getPageCount.
[in]select_info_arrayThe selected info array.
[in]dest_move_itemThe destination move item.
Returns
YES means data order can be moved, while NO means not.

◆ canSelectTableCellAtPoint:point:()

- (FSReadingOrderTableSelectResult) canSelectTableCellAtPoint: (FSPDFPage*)  page
point: (FSPointF*)  point 

Check whether a table cell can be selected on mouse down at the given point.

Parameters
[in]pageA PDF page object.
[in]pointThe point, in the PDF coordinate system (PDFPage).
Returns
The table select result. Please refer to values starting from FSReadingOrderTableSelectResultNone.

◆ clearPageStructInfo:()

- (void) clearPageStructInfo: (FSPDFPage*)  page

Clear page structure info.

Parameters
[in]pageThe PDF page object.
Returns
None.

◆ deleteOrderDataStructInfo:src_order_index_array:is_loaded:()

- (int) deleteOrderDataStructInfo: (FSPDFPage*)  page
src_order_index_array: (FSInt32Array*)  src_order_index_array
is_loaded: (BOOL)  is_loaded 

Delete order data structure info.

Parameters
[in]pageThe PDF page object.
[in]src_order_index_arrayThe source order index array.
[in]is_loadedWhether the page is loaded.
Returns
The deleted count.

◆ drawReadingOrderItems:()

- (BOOL) drawReadingOrderItems: (int)  page_index

Draw reading order items for a specified page.

Parameters
[in]page_indexThe page index. Valid range: from 0 to (count-1). count is returned by function FSPDFDoc::getPageCount.
Returns
YES means success, while NO means not.

◆ endEditTable()

- (BOOL) endEditTable

End edit table.

Returns
YES means success, while NO means not.

◆ generateTableHeaderIDs()

- (BOOL) generateTableHeaderIDs

Generate table header IDs.

Returns
YES means success, while NO means not.

◆ getAllLeafChildrenByContentItemID:content_item_id:()

- (NSArray< NSData * > *) getAllLeafChildrenByContentItemID: (FSContentTreeItemArray*)  content_tree
content_item_id: (NSString *)  content_item_id 

Get all leaf children by content item ID.

Parameters
[in]content_treeThe content tree.
[in]content_item_idThe content item ID.
Returns
The array of leaf children IDs.

◆ getContentTree()

- (FSContentTreeItemArray *) getContentTree

Get content tree.

Returns
The array of content tree items.

◆ getCurrentTableHeaderIDs()

- (NSArray< NSString * > *) getCurrentTableHeaderIDs

Get the array header ID of current table.

Returns
The array of header ID.

◆ getReadingOrderTreeItems()

- (FSTreeItemArray *) getReadingOrderTreeItems

Get reading order tree items.

Returns
The array of reading order tree items.

◆ getSelectedTableCellAttributes()

- (FSTableCellAttributeArray *) getSelectedTableCellAttributes

Get selected table cell attributes.

Returns
The array of cell attribute objects.

◆ getTableSummary:()

- (NSString *) getTableSummary: (FSPDFPage*)  page

Get table summary.

Parameters
[in]pageThe PDF page object.
Returns
The table summary text.

◆ hasHeaderID:()

- (BOOL) hasHeaderID: (NSString *)  header_id

Check whether current table header ID is existing.

Parameters
[in]header_idThe header ID to check.
Returns
YES means the header ID is existing, while NO means not.

◆ hasMissingHeaderIDs()

- (BOOL) hasMissingHeaderIDs

Check whether current table is missing header IDs.

Returns
YES means current table is missing header IDs, while NO means not.

◆ initWithOther:()

- (id) initWithOther: (FSReadingOrder*)  other

Constructor, with another reading order object.

Parameters
[in]otherAnother reading order object.

◆ initWithPdf_doc:()

- (id) initWithPdf_doc: (FSPDFDoc*)  pdf_doc

Constructor.

Parameters
[in]pdf_docA valid PDF document object.

◆ isEditingTable()

- (BOOL) isEditingTable

Check whether table editing has started.

Returns
YES means table editing has started, while NO means not.

◆ isEmpty()

- (BOOL) isEmpty

Check whether current object is empty or not.

Returns
YES means current object is empty, while NO means not.

◆ moveOrderData:src_order_index_array:dest_order_index:()

- (int) moveOrderData: (int)  page_index
src_order_index_array: (FSInt32Array*)  src_order_index_array
dest_order_index: (int)  dest_order_index 

Move data order.

Parameters
[in]page_indexThe page index. Valid range: from 0 to (count-1). count is returned by function FSPDFDoc::getPageCount.
[in]src_order_index_arrayThe source order index array.
[in]dest_order_indexThe destination order index.
Returns
The moved count.

◆ removeOrderDataForRect:rect:()

- (FSRectFArray *) removeOrderDataForRect: (int)  page_index
rect: (FSRectF*)  rect 

Remove order data for selected rect.

Parameters
[in]page_indexThe page index. Valid range: from 0 to (count-1). count is returned by function FSPDFDoc::getPageCount.
[in]rectThe selected rect.
Returns
The updated order rect array.

◆ selectTableAtPoint:point:()

- (BOOL) selectTableAtPoint: (int)  page_index
point: (FSPointF*)  point 

Select the table at the specified point on a page, if any.

Parameters
[in]page_indexThe page index. Valid range: from 0 to (count-1). count is returned by function FSPDFDoc::getPageCount.
[in]pointThe point used to locate the table, in PDF page coordinate system.
Returns
YES means a table is found and selected at the specified point, while NO means not.

◆ selectTableCellAtPoint:point:region_selected:appended:()

- (FSReadingOrderTableSelectResult) selectTableCellAtPoint: (FSPDFPage*)  page
point: (FSPointF*)  point
region_selected: (FSRectFArray*)  region_selected
appended: (BOOL)  appended 

Select table cell by point on mouse up.

Parameters
[in]pageA PDF page object.
[in]pointThe point.
[out]region_selectedThe selected region array.
[in]appendedWhether to append the selection.
Returns
The table select result. Please refer to values starting from FSReadingOrderTableSelectResultNone.

◆ selectTableCellAtRect:rect:region_selected:appended:()

- (FSReadingOrderTableSelectResult) selectTableCellAtRect: (FSPDFPage*)  page
rect: (FSRectF*)  rect
region_selected: (FSRectFArray*)  region_selected
appended: (BOOL)  appended 

Select table cell by rect on mouse up.

Parameters
[in]pageA PDF page object.
[in]rectThe rectangular area .
[out]region_selectedThe selected region array.
[in]appendedWhether to append the selection.
Returns
The table select result. Please refer to values starting from FSReadingOrderTableSelectResultNone.

◆ setOrderTypeForSelectedContent:()

- (BOOL) setOrderTypeForSelectedContent: (FSReadingOrderStructureType)  structure_type

Set order type for selected content.

Parameters
[in]structure_typeThe structure type. Please refer to values starting from and this should be one of these values.
Returns
YES means success, while NO means not.

◆ setOrderTypeForSelectedTreeItems:select_info_array:()

- (BOOL) setOrderTypeForSelectedTreeItems: (FSReadingOrderStructureType)  structure_type
select_info_array: (FSTreeItemInfoArray*)  select_info_array 

Set order type for selected tree items.

Parameters
[in]structure_typeThe structure type. Please refer value .
[in]select_info_arrayThe selected info array.
Returns
YES means success, while NO means not.

◆ setReadingOrderOptions:()

- (void) setReadingOrderOptions: (FSReadingOrderOptions*)  options

Set reading order options.

Parameters
[in]optionsThe reading order options. Please refer to FSReadingOrderOptions .
Returns
None.

◆ setSelectedTableCellAttributes:change_id_enabled:need_change_ids:()

- (BOOL) setSelectedTableCellAttributes: (FSTableCellAttribute*)  cell_attribute
change_id_enabled: (BOOL)  change_id_enabled
need_change_ids: (BOOL)  need_change_ids 

Set selected table cell attributes.

Parameters
[in]cell_attributeThe cell attribute to set.
[in]change_id_enabledWhether to enable changing Id.
[in]need_change_idsWhether to change IDs.
Returns
YES means success, while NO means not.

◆ setTableSummary:table_summary:()

- (BOOL) setTableSummary: (FSPDFPage*)  page
table_summary: (NSString *)  table_summary 

Set table summary.

Parameters
[in]pageThe PDF page object.
[in]table_summaryThe table summary text.
Returns
YES means success, while NO means not.

◆ startEditTable:()

- (BOOL) startEditTable: (FSPDFPage*)  page

Start edit table.

Parameters
[in]pageThe PDF page object.
Returns
YES means success, while NO means not.

◆ startEditTableAtPoint:point:()

- (BOOL) startEditTableAtPoint: (FSPDFPage*)  page
point: (FSPointF*)  point 

Start editing the table located at the specified point on a page, if any.

Parameters
[in]pageThe PDF page object.
[in]pointThe point used to locate the table to be edited, in the PDF coordinate system (PDFPage).
Returns
YES means a table is found at the specified point and editing has started successfully, while NO means not.

◆ synchronizeTable()

- (void) synchronizeTable

Synchronize table.

Returns
None.