Dynamic Line Extraction
Use the Dynamic Line Extraction property for variable-height line extraction. This checkbox is contextual and only appears when a Positional Zone is assigned a repeating Directional Zone as a parent Zone. It is used most often for extracting repeating rows of table data where the number of lines of text in the row might vary (such as the description field of a line-item invoice where the text may wrap to multiple lines).
Using the Dynamic Line Extraction, Positional Zones can be of variable heights, with their Search Regions drawn dynamically based on the coordinates of their parent Directional Zones and the next repeating instance of that Directional Zone. This allows for far greater accuracy in cases where a Zone’s height or width may dynamically change based on the data in it.
Note that each repeating Positional Zone will continue to extract text until the next repeating Positional Zone is found. Since the last repeating area has no following Positional Zone, it will continue until it reaches a footer Zone, a Zone Anchor, or the end of the page. Dynamic Line Extraction is possible on multi-page documents; it simply follows the parent Directional Zone on the next page.
Also note that if the Positional Zone is not in the same plane as its parent Directional Zone but is instead offset by some amount, that offset continues with the following repeating Zones, for the amount set for that first offset.
- To configure Dynamic Line Extraction, create a repeating Directional Zone to identify each repeating line in the table.
- Create a Positional Zone to extract another column of data and, in the Parent drop-down list, select the repeating Directional Zone.
- Enable Dynamic Line Extraction.
- Set limits to the number of lines of text to extract in the Min and/or Max text boxes.
Example: Extract Line-Item Data
Use Dynamic Line Extraction when you wish to extract line-item data from an invoice where details may be a single or multiple lines long. Create a Zone Search Region which is one line high, for example, and extract from one, two, or more lines of text. The line extraction resizes automatically relative to other elements on the page.
In most cases, you should dynamically size a Positional Zone with a repeating Directional Zone parent will be so it's height is one pixel less than the top position of the next repeating Directional Zone. For this to work as expected, the Directional Zone's From Parent Edge property should be set to Bottom.