Formatting Pass Reduction in ACL
The term "pass reduction" refers to minimizing the number of formatting passes Arbortext Editor takes when formatting a document instance for preview or printing. Without pass reduction, documents that refer to page numbers or page locators (for example, in a table of contents, in cross references, or having the final page number in the header or footer), will require two passes the first time they are formatted during an editing session. With pass reduction, many documents can be formatted satisfactorily with one pass. This approximately halves the time required for formatting, at the risk of some loss in typesetting precision in the form of extra white space adjacent to page numbers.
The basic mechanism for pass reduction is a process where the resolved page locators are overlaid in space reserved for them during the initial pass. Whether or not there is visible extra space, and whether it degrades a document's appearance depends on the FOSI, and the document instance.
Arbortext Editor provides users with access to pass reduction controls with two preferences. For ACL scripting purposes, these preferences are available in the form of two set commands.
The set overlaypagenumbers command enables/disables pass reduction (the default is enabled). The set overlayunderflowtolerance command sets the amount of disparity to accept when a final page variable value is smaller than the space it is overlaid in. Arbortext Editor never accepts an overlay if the new value is larger than the space it is overlaid on (the default is one character).
The related environment variable,
APTNOOVERLAYPAGENUMBERS, is provided for customers who absolutely do not want page number overlaying to be done, they can totally disable overlaying by setting the environment variable
APTNOOVERLAYPAGENUMBERS to
Yes.
The paragraphs below explain how these settings interact with formatting command options. First some terms need to be explained:
• overlaying fails means that it is impossible to overlay page numbers because the change in a page variable affects the structure of the formatted output, not just a character string. This is the case when
◦ an index contains entries with multiple page references these can't be overlayed because they may have been merged, or
◦ a page variable contains constructs such as elements, pseudo-elements, kerns, that is anything other than a counter value or character string
• overlaying was poor means:
◦ an overlaid value was more characters than the original, or
◦ an overlaid value was less than the original value by more than overlayunderflowtolerance characters
• overlaying works well means neither of the above conditions was true
• formatting command means any of the preview, format, or print composed commands.
If pass reduction is enabled, and you execute a formatting command with the onepass option, the Arbortext Editor formatter makes one pass, and at the end of the pass overlays page numbers so that the output will show resolved page numbers. If overlaying fails or is poor, then the document will be marked as refmt-needed and the next formatting command the user enters will cause another formatting pass, and the correct values will be plugged in without being overlaid. If overlaying works well, then the document will not be marked as refmt-needed. If desired, the user could force an additional formatting pass using the force option with the formatting command in order to obtain a non-overlaid result.
If pass reduction is enabled, and you execute a formatting command with the allpasses option, the Arbortext Editor formatter first makes one pass and at the end of the pass overlays page numbers. If overlaying fails or is poor, then the formatter automatically does another pass. If overlaying works well, then the single pass suffices. Again, if desired, the user could force an additional formatting pass using the force option with the formatting command in order to obtain a non-overlaid result.
If pass reduction is disabled, and you execute a formatting command with the onepass option, then the Arbortext Editor formatter makes one pass, and at the end of the pass, if there are any page numbers that are incorrect, it overlays page numbers so that the output will show resolved page numbers. That part is the same as if pass reduction is enabled. What is different is that the document will be marked as refmt-needed if any page number overlaying was done, regardless of whether the overlaying worked well.
If pass reduction is disabled, and you execute a formatting command with the allpasses option, the Arbortext Editor formatter makes one pass, and at the end of the pass, if there are any page numbers that are incorrect, a second pass is automatically initiated.
A compromise for users who want highest publishing quality but want the speed of overlaying would be to specify the underflow tolerance as 0. Then overlaying will be attempted, but will only be accepted for final output if the number of characters matches exactly. How often this happens will depend on the work habits of your authors.
Related Topics