In this article, you will learn
- which layout elements are available for creating Fixups, and
- how to incorporate these elements into the XML file to use in the Workflow.
1. Introduction
As in many areas, a well-considered structure is important when creating a custom Fixup. It helps maintain a clear and concise Fixup dialog, improving navigation and usability for the user. While a proper structure enhances the user experience, it does not impact the functionality of the Fixup. Instead, it serves purely as a visual enhancement within the dialog when accessing the Fixup in the Workflow.
Creating user-defined Fixups
Before incorporating graphical elements into a Fixup, ensure that both the KFPX and XML files are prepared. For guidance on creating these files, refer to the article Creating Fixups without a Variable as well as the advanced article Create Parametrizable Fixups.
2. Layout Elements in Fixup Dialogs
In addition to assigning the appropriate types to variables within the XML file, layout elements can also be incorporated. These layout elements can be used to display Templates for Fixups, add subheadings, or include page selection options within the user interface. The following article provides a detailed description of the available layout elements that can be displayed in dialogs when executing Fixups in the user interface.
2.1. Fixup Templates
Settings selected within a Fixup can be saved as a Template. The user can then quickly select predefined Templates when accessing the Fixup, eliminating the need to manually re-enter values and significantly reducing the risk of human error.
Creating Fixup Templates is highly important
Not only do Fixup Templates save users considerable time in their daily workflows, but Fixup settings can only be exported and imported to another workstation if they have first been saved as a Fixup Template. Additionally, Fixup Templates are required to parameterize selected Fixups in the Apply Fixups operation within a Production Configuration.
Figure 1: Left: XML file defining a Template; Right: Dialog of the Fixup as displayed in the Workflow
To incorporate a Template into your user-defined Fixup, proceed as follows:
- Open the XML file of the Fixup you have already created.
- Below the
<automationKey>
...</automationKey>
element, insert the<dialog>
...</dialog>
element. The required structure is shown in Figure 1. - To create a Template for a Fixup, assign the following attributes to the
<dialog>
...</dialog>
element:-
mode
[2] – set the value todefault
. This ensures that default values from the KFPX and/or XML file are displayed in the corresponding Fixup options. -
has
Templates [1] – set this value totrue
to enable the selection of a Template in the user interface.
-
-
Template
Label locale
[3] – specify the label for the Template selection menu. The Fixup will only function if the English translation is available. If a translation for another language is missing, the English translation will be used as a fallback.
Forreference, we have provided a KFPX file «PLACE_TEXT_Template_MANUAL.kpfx» and the corresponding XML file «PLACE_TEXT_Template_MANUAL.xml» for download. The Template is defined within the XML file.
2.2. Subheadings
The presence of numerous options within a Fixup can quickly become overwhelming. By utilizing subheadings, distinctions or groupings can be made within the user interface in the dialog of a Fixup, helping to organize the options and present them clearly together to the user.
Handling Headings
A heading is managed within the XML file in the same way as all other variables defined in the KFPX file. No changes are required to the KFPX file; only the relevant elements need to be added to the XML file.
Figure 2: Left: Section of the XML file where a subheading has been inserted; Right: Dialog of the Fixup as displayed in the Workflow
To insert a subheading into your custom Fixup, proceed as follows:
- Open the XML file of the Fixup you have already created.
- Insert the
<variable>
...</variable>
element directly below the variable where you want the subheading to appear. Figure 2 illustrates the structure. - Assign the following attributes for the
<variable>
...</variable>
element to create a subheading for the Fixup:-
name
[5] – enter the internal name for the subheading. This name will not be visible in the user interface. You can choose any name, but it is recommended to make it descriptive. -
type
[4] – assign the typeUI_LIMITER
to create a subheading. -
displayVariable
[7] – set this value totrue
to ensure the subheading is displayed in the dialog. -
description
[6] – enter a description for the subheading. This description will be displayed in the dialog. The heading can be translated into all languages supported by the Workflow. The English translation is mandatory, and the Fixup will only function if it is available. If a translation for another language is missing, the English translation will be displayed.
-
For illustration, we have provided a KFPX file «PLACE_TEXT_Template_MANUAL.kpfx» and the corresponding XML file «PLACE_TEXT_Template_MANUAL.xml» for download. The Template is defined in the XML file.
2.3. Lock Icon
In some cases, two or four variables are required, such as for defining the Bleed or Offset of a Fixup. To prevent users from entering the same values in multiple input fields, variables can optionally be locked within the XML file. This allows the user to enter the desired value in only one input field.
To link the input fields by displaying a lock symbol and create a group, the following changes or additions must be made to the XML file:
- All variables to be linked must include additional attributes.
- The created group must be defined within the XML file.
For illustration, we have provided a KFPX file named «CREATE_BLEED_LOCKER_MANUAL.kpfx» and the corresponding XML file «CREATE_BLEED_LOCKER_MANUAL.xml» for download. The Template is defined in the XML file.
2.3.1. Assign Attributes to Linked Variables
To link variables within the XML file, you must first identify the variables to be linked. Additional attributes must then be added to the variables that are to be linked.
Attributes of a Variable
For information on which attributes need to be assigned to different variables or types, refer to the article Create Parametrizable Fixups.
Figure 3: Section of the XML file showing all attributes for the linked variables
The following attributes must also be added to variables for them to be linked in a group:
-
controlGroupKey
[8] – enter the name of the group to which the respective variables should be linked. This group name must be the same for all the variables involved. -
controlGroupPosition
[9] – specify the position of the variables within the link. The numbering corresponds to the following positions:- 1 – the variable is positioned in the upper-left corner.
- 2 – the variable is positioned in the upper-right corner.
- 3 – the variable is positioned in the lower-left corner.
- 4 – the variable is positioned in the lower-right corner.
2.3.2. Define Group
To link the variables, the previously defined groups must be created within the XML file. To do this, follow these steps:
- Below the
<fixups>
...</fixups>
element, insert the<controlGroups>
...</controlGroups>
element and add the<controlGroup>
...</controlGroup>
element. Figure 4 illustrates the structure. - Assign the following attributes to the
<controlGroup>
...</controlGroup>
elements to create the group for the variables to be linked:-
key
[11] – enter the group name [8] (Figure 3) assigned to the variables to be linked. -
designType
[10] – enter the desired design for the linked variables. Depending on whether you want to link two or four variables, the following two types are available:-
LOCKER_2
– use this type if two variables should be linked. This will display the variables side by side in the dialog with a lock symbol in the middle. -
LOCKER_4
– use this type if four variables should be linked. This will display the variables in a 2 x 2 grid with a lock symbol in the middle.
-
-
validationType
[12] – enter theType
used for the respective variables. -
validationModelUnit
[13] – enter themodelUnit
defined for the respective variables in the KFPX file.
-
Figure 4: Left: Excerpt from the XML file where the group is defined; Right: Dialog of the Fixup as displayed in the Workflow
2.4. Filters for Fixups
- Category – once filters are set for Fixups, the user must determine which category the Fixup should be assigned to. Each Fixup can only be assigned to one category. The following Category ID and Name are used by default in the Workflow:
Category ID | Name |
---|---|
DOCUMENT |
Document |
PAGES |
Page |
IMAGES |
Image |
TEXT |
Text |
OBJECTS |
Object |
FONTS |
Font |
COLORS |
Color |
PACKAGING |
Packaging |
PAGEBOXES |
Page Box |
PAGECONTENT |
Page Content |
LAYERS |
Layer |
LFP |
LFP |
- Action – various Action filters can be set for each Fixup. Unlike categories, multiple Action filters can be applied to a Fixup. The following Action ID and Name are used by default in the Workflow:
Action ID | Name |
---|---|
ADD |
Add |
APPLY |
Apply |
CHANGE |
Change |
CLIP |
Clip |
COMPRESS |
Compress |
CONVERT |
Convert |
CREATE |
Create |
CROP |
Crop |
DELETE |
Delete |
DOWNSAMPLE |
Downsample |
FILL |
Fill |
FLATTEN |
Flatten |
HIDE |
Hide |
IMPOSE |
Impose |
INCREASE |
Increase |
MAKEVISIBLE |
Make Visible |
MERGE |
Merge |
MIRROR |
Mirror |
OPTIMIZE |
Optimize |
PLACE |
Place |
REDUCE |
Reduce |
RENAME |
Rename |
ROTATE |
Rotate |
SCALE |
Scale |
SPLIT |
Split |
TRANSFORM |
Transform |
- Search – in addition to each Fixup, a property can be assigned as a filter. Multiple filters can also be applied to a Fixup for property filtering. The following Search ID and Name are used by default in the Workflow:
Search ID | Name |
---|---|
ALL |
All Pages |
ANNOTATION |
Comments |
ARTBOX |
ArtBox |
BACKGROUND |
Background |
BANNER |
Banner |
BITMAP |
Bitmap |
BLEED |
Bleed |
BLEEDBOX |
BleedBox |
CMYK |
CMYK |
CAPTION |
Caption |
CROPBOX |
CropBox |
CROPMARKS |
Crop Marks |
DIE |
Dieline |
DRILLHOLE |
Drillhole |
DUPLICATE |
Duplicate |
EDGEREINFORCEMENT |
Edge Reinforcement |
EMBED |
Embed |
EMPTY |
Empty Page |
EVEN |
Fill |
FLIP |
Flip |
FOLDINFLINE |
Folding Line |
GRAYSCALE |
Gray |
GRID |
Grid |
GROMMET |
Grommet |
HEM |
Hem |
HKS |
HKS |
IMAGEBOX |
ImageBox |
IMAGEBOX_BLEED |
ImageBox + Bleed |
IMAGE |
Images |
KNOCKOUT |
Knockout |
LAB |
Lab |
MEDIABOX |
MediaBox |
MIRROR |
Mirror |
N-CHANNEL |
N-CHANNEL |
OCR |
OCR |
ODD |
Odd |
OUTLINE |
Outline |
OI |
Output Intent |
OVERLAY |
Overlay |
OVERPRINT |
Overprint |
PANTONE |
Pantone |
PREVIEW |
Preview |
PRIMER |
Primer |
RAL |
RAL |
REGISTRATIONMARK |
Registration Marks |
RGB |
RGB |
RICHBLACK |
Rich Black |
ROTATE |
Rotate |
USERUNIT |
Scale Factor |
LINEART |
Vectors |
SHAPE |
Shape |
SPOT |
Spot Color |
STROKE |
Stroke |
TEXT |
Text |
TILING |
Tiling |
TONEVALUE |
Tone Value |
TRANSPARENCY |
Transparency |
TRIMBOX |
TrimBox |
VARNIS |
Varnish |
WHITE |
White |
Handling Filters
Continue reading to learn how filters are handled in the Workflow for Fixups. We recommend familiarizing yourself with all available filter functions to ensure that you apply the appropriate filters to your custom Fixup.
However, you can also use any other value as a filter for your Fixups. The values listed above are the default filters used in the Workflow.
Figure 5: Left: Excerpt from the XML file where the filters are defined; Right: The filtered Fixup in the Workflow
To set filters for your user-defined Fixup, follow these steps:
- Open the XML file of the Fixup you have already created.
- Below the
<fixups>
...</fixups>
element, insert the<category>
...</category>
element. The category filter for the Fixup is set within this element. Assign the following attribute:-
ID
[14] – enter the internal key for the category filter. For example, if you enter the ID «TEXT», your Fixup will be associated with the category filter «Text». -
name
[15] – enter the name of the filter that will make your Fixup searchable. This name can be translated into all supported languages in the Workflow. The English translation is mandatory, and the Fixup will only function if it is available. If a translation is missing for a language, the English translation will be displayed.
-
- Within the
<category>
...</category>
element, insert the<filter>
...</filter>
element. Assign the following attributes:-
ID
[16] – enter the internal key for the filter – Action or Search. Select the appropriate filter type based on whether you want to locate the Fixup in the Action or Search selection menu. -
type
[17] – specify whether the filter should be a process filter (ACTION
) or a search filter (SEARCH
). -
name
[18] – enter the name of the filter by which your Fixup will be located later in the Action or Search filter. This name can be translated into all supported languages in the Workflow. The English translation is mandatory, and the Fixup will only function if it is available. If a translation is missing for a language, the English translation will be displayed. This name can be translated into all supported languages in the Workflow.
-
- Repeat step 3 until all the desired filters are set for this Fixup.
For illustration purposes, we have provided a KFPX file «PLACE_TEXT_FILTER_MANUAL.kpfx» and the corresponding XML file «PLACE_TEXT_FILTER_MANUAL.xml» for download. The Template is defined in the XML file.
Article update: Workflow 1.20.1 – 04/2025