Step by step - Learn how to use callas productscallas pdfToolboxContext aware object detection: Sifter"Shapes" Property for use in "Context aware object detection" checks

"Shapes" Property for use in "Context aware object detection" checks

The Shapes Property – which only works inside certain Context aware object detection Checks –  uses the same concept on which the Shapes Fixup is based.

Where the Shapes Fixup establishes a shape to be used for creating filled or stroked graphics objects or for clipping, the Shapes Property for use in "Context aware object detection" Checks establishes a shape that serves as a context against which graphics objects can be tested.

The options for defining a shape are the same in the Property and in the Fixup. For a discussion of the Shapes Fixup see  the chapter on Shapes Fixups.

The following Properties require a reference to a check based on the Shapes Property:

  • Object crosses shape
  • Object inside shape
  • Object outside shape
  • Object reaches into edge area of a shape

Example: Setting up an 'Object inside "Cutline"' check using a shape Property

Sample files

This example makes use of the check Object inside "Dieline" (uses Shape property).kfpx and the PDF file spot green circles inside and outside red "Dieline".pdf. In addition the fixup Create 'pink' overlay from "Cutline".kfpx and the result from applying it to the sample file, spot green circles inside and outside red "Dieline" with pink overlay.pdf, are also provided.

All these files are available for download:

Setting up the shape based check

See below how to set up the intended check based on the "Object inside shape" Property.

The goal is to detect objects on the page that are inside the area enclosed by the "Cutline".

As the Shape defined by "Cutline" check is using a variable, it is possible to decide at runtime whether to look for a "Cutline" colored line or a line using a different color.

After execution of the Object inside "Dieline" (uses Shape property).kfpx it turns out there are two objects that are considered to  be inside the shape defined by the "Cutline", as can be seen in the two screenshots below:

In order to find out whether the shape defined in the Shape defined by "Cutline" check is actually what one expects it to be, one can use the same shape definition (unfortunately it has to be re-entered in the Shape fixup configuration) and create a filled area based on the shape definition.

As can be seen below the filled 'pink' area covers the "Cutline" shape as expected: