void = SetBoxTop(nFixedUnits)
the XYWH measurements palettes of QuarkXPress and InDesign
This macro function is used to specify the top position of the textbox that contains the macro token as nFixedUnits, without changing the position of the other 3 sides.
nPos = SizeMm(10000) // 10 mm or about 0.25 inches
SetBoxTop(nPos)
➢The value of the position you supply to this function must include the offset from the pasteboard to the top of the page, whose value differs between versions of QuarkXPress and InDesign, and can be obtained from the n_VerticalPasteBoardOffset system variable.
This function will affect the height of the textbox, depending on the value of nFixedUnits in comparison to the top position of the textbox before the function was called.
Non-Rotated Boxes
Looking at the XYWH measurements palette of QuarkXPress and InDesign, the effect of this function is to set the value of Y equal to nFixedUnits, and to change the value of H by minus nFixedUnits (where nFixedUnits can be a negative number).
Rotated Boxes
Textbox resizing functions only work on textboxes whose angle is a multiple of 90 degrees (0°, 90°, 180°, or 270°).
When using this function with QuarkXPress, you should not use this function on a rotated box. Instead you should rotate the text inside a non-rotated box, as explained in the gridtemplate construction guidelines.
When using this function with InDesign, it is the visual top of the box that is specified and therefore the changes to the values of XYWH will differ depending on the rotation of the box, ensuring that the visual result of this function is always the same.
See also: MoveBoxVert, SizeMm, SizePt, SizeIn and textbox resizing macro functions.
Topic 179900, last updated on 15-Feb-2025