What is Offsetter?
Offsetter is a macro that can offset a guideline or a two-node line by a specified distance.
In this context, "offset" means moving the line - or creating a duplicate of the line - a specified distance in a direction that is at a right angle to the direction of the line.
See Offsetter in use.
Here, guidelines are first manually snapped to the quadrants of an ellipse, then offset by a specific distance using Offsetter:
Here, Offsetter is used to offset vertical, horizontal, and angled guidelines by various distances:
Here, Offsetter is used to create duplicates of horizontal, vertical and angled two-node lines, offset by various distances:
Here, a number of two-node lines are created by snapping to nodes of a shape. Offsetter is then used to offset those lines toward the inside of the shape in preparation for creating a new shape using Smart Fill:
Screenshot:
Using the macro.
Offsetter works with guidelines and with two-node lines. In this context, "two-node line" means an object with these characteristics:
When the Offsetter form is visible, and a single guideline or two-node line is selected, then two buttons on the form are enabled. Which two buttons are enabled depends on the orientation of the selected line. The letters on the buttons are abbreviations for the direction of offset - UL for "Up and Left", U for "Up", R for "Right, etc.
When a button is clicked, the selected line is repositioned - or, if Duplicate is checked, a duplicate is created at that position.
When the macro is used to create a duplicate, and Select Duplicate is checked, then the duplicate is selected. If it is unchecked, then the original object is selected.
Using the Comboboxes.
The boxes for numeric entry are comboboxes. The drop-down list for a combobox can contain values stored for convenient access. If a combobox is not locked, then when a value in thatcombobox is used by the macro, that value is added to the top of the list. If an existing value is used from the list, then that value is moved to the top of the list. Values can also be manually added to the list.
Ctrl+clicking on a combobox sets that combobox to its default value.
Right-clicking on a combobox brings up a menu of options for managing it.
These options may include:
Units of Distance.
For a combobox that represent a distance, values are applied by the macro in whatever units (inches, millimeters, etc.) are shown beside the combobox. Those units can be specified by the user through the right-click context menu.
If “Follow Horizontal Ruler Units” is chosen, then the units for the combobox are the same units that are in use in the document for the horizontal ruler. If those units are changed in the document, then the macro automatically changes the units in the combobox to match.
Although this documentation makes references to “the list” for the combobox, there is not necessarily only one list. The combobox maintains a separate list for any unit that is used in it. When units for the combobox are changed, then the list associated with those units is loaded. The number of decimal places, and also whether a list is locked or not, are things that are handled independently for each list.
A Video Describing and Demonstrating the Special Features of My ComboBoxes:
Offsetter Subs in the Macro Manager.
Compatibility.
Offsetter was put together in a CorelDRAW X7 environment, and should work in versions X7-2020.
OK, where's the macro?
JQ_Offsetter_Current.zip (most recently updated 2021-07-16).
That includes the .GMS file and a simple icon that can be used on a CorelDRAW Toolbar.
Please note that, starting with the version released on 2020-05-09, this macro uses a different scheme for storing combobox value lists and some preferences in the Registry. If you have been using an older version of this macro, those "old" value lists and preferences will not be there when you use the newer version. If you want to "clean out" those old entries that are not used by the newer version of the macro, the best way to do so is to run the Remove_Offsetter_Registry_Entries sub, which will set the macro back to its default values.