Defining a Frame
An object can be identified as a flow, static or dynamic frame as follows: select the object (it should be the only object selected) then select the TeX/LaTeX->Flow Frames->Set Frame menu item. This will open up a dialog box in which you can specify the frame's attributes. Initially only the Type field is enabled (as shown in Figure 10.8) since all the other fields aren't valid for type None.
Make sure you set the typeblock before you set any frames. If you later adjust the typeblock, you may need to readjust the even shifts for all frames that may be displayed on verso pages.
- The Frame Type
The frame's type is specified using the drop-down list labelled Type. There is a choice of: Flow, Static, Dynamic or None. None indicates that the object has no associated flowframe data, which means that the object will not be saved if the image is exported to a LaTeX package or class.
- The Frame Label
Each frame is assigned a label so that it can be referenced in the document. Each label must be unique for its given frame type. To assign a label to the selected frame, enter it in the box marked Label.
There are four dynamic frame labels that have a special meaning for FlowframTk: header, footer, evenheader and evenfooter. These indicate that the frame should be converted into the page header or footer frame (analogous to the flowfram package's \makedfheaderfooter command). If you use any of these labels, when you export to a package or class file, FlowframTk will modify LaTeX's standard page style mechanism to hide the header and footer frames when you use the empty page style, hide just the header when you use the plain page style and hide just the footer when you use the headings page style. If you only define a header frame but no footer frame, FlowframTk will switch on the headings page style. If you only define a footer frame but no header frame, FlowframTk will switch on the plain page style. If you define both a header and a footer frame, FlowframTk will switch to its own custom page style called flowframtk that puts \leftmark or \rightmark in the header and \thepage in the footer. This custom page style is only defined if you have a header or footer frame. These labels only have a special significance for dynamic frames.
The evenheader and evenfooter labels are provided in case you want to have a different frame for even pages. This will typically only be necessary if you want a different border or frame dimensions for the header or footer on even pages, as the even page horizontal shift is usually sufficient.
- The Frame Border
The Border drop-down list allows you to specify whether the frame has a border. If the option As Shown is set, then the object will be drawn as the frame's border. If the option None is set, then the frame will not be given a border, and the object will be used only as an indication of the frame's width, height and location (and possibly shape, see The Frame Shape).
Note that all text areas are considered to be a part of the frame's background, not the frame's contents, and will only appear if the border As Shown setting is applied. Likewise for bitmaps. The border is not available for non-standard paragraph shapes.
- The Page List
You can specify the page list on which the frame is defined, using the Pages combo box. Either select one of: All, None, Odd or Even, or you can type in a comma separated list of pages or page ranges (e.g.
1-10,12,14,>20
). The page references are as described in The flowfram Package: A Brief Summary. Use the flowframe pages setting section of the TeX/LaTeX Configuration Dialog to specify whether the page list uses absolute or relative numbers.- Margins
The frame may have margins between the border and the area in which the contents are typeset. The margins are usually only relevant if you have specified the As Shown border option. The margins are not available for non-standard paragraph shapes.
- Alignment
You can change the vertical alignment of the contents of a static or dynamic frame using the Alignment drop-down list. This can be one of: Top, Middle or Bottom, which correspond to the settings valign=t, valign=c and valign=b, respectively, provided by \setdynamicframe and \setstaticframe. This facility is not available for flow frames.
- Even Shift
By default, the frame location on even pages is the same relative to the typeblock as on odd pages. You can override this by specifying a shift to apply to the location when the frame is displayed on an even page. However, this setting only has an effect if you use the twoside class option. This is typically the default for classes such as book, but not for classes such as article or report. Typically, only the horizontal shift may be needed for two-sided documents, but if for some reason you require a vertical shift that option is provided. In most cases, the horizontal shift is used to create a symmetric page layout (by which I mean the frame locations are symmetric not the frame borders). For convenience, there's a button labelled Compute Symmetric X Shift that will work out the appropriate horizontal shift to create a symmetric layout, given the current frame position and typeblock margins. If you later move the object or modify the margins you will need to update the horizontal shift.
If the typeblock has an even page shift, remember to take this into account when setting the even shift for the frames. You can check the frame's position on even pages using the display page dialog.
- Contents
As described in The flowfram Package: A Brief Summary, the contents of static and dynamic frames need to be explicitly set using commands or environments provided by the flowfram package. For your convenience, FlowframTk provides a way for you to specify the contents and will use the appropriate commands when you export to a package or class file. To add or edit the contents, click on the Edit button, which will open FlowframTk's little TeX editor. Note that you can't use verbatim text in the contents.
If your frame has been assigned the Dynamic type and has been given one of the special dynamic labels header, footer, evenheader or evenfooter, as described above, setting the contents has a different effect. The code you provide in the contents is inserted into the header or footer to enable you to modify the formatting. Note that you shouldn't use commands like \thepage, as that will be done automatically. It's best to stick to declarations, such as \bfseries, although the final command may be a text-block command, such as \textbf, as it is typically followed by \thepage or the header mark.
Once an object has been identified as a frame, a grey rectangle will appear on the screen indicating the area in which the contents of the frame will be typeset, along with the frame's type, identification label and page list.
Note that if the object is a group, the frame information will be applied to the whole group. This means you can construct a frame border by grouping several objects, however, if you later ungroup this object, you will lose the frame information.