Fit Objects to Path?
Fit Objects to Path is a CorelDRAW extension that can be used to fit objects to a path.
This extension could be purchased through "Get More" for CorelDRAW X8.
CorelDRAW 2018 and CorelDRAW 2019 include Fit Objects to Path "in the box" at no extra cost.
What's the problem?
The docker for Fit Objects to Path in 2018 and 2019 has several defects compared to the docker in X8:
Having two checkboxes missing means that this extension is less useful than it should be!
What's the solution?
As best I can figure it, the problems with the Fit Objects to Path docker are caused by some errors in a file named DrawUI.XML. That file is located in one of the CorelDRAW installation folders, for example:
C:\Program Files\Corel\CorelDRAW Graphics Suite 2018\Draw\UIConfig.
DrawUI.XML is a text file, and so is straightforward to view and edit with a text editor (I use Notepad++).
Some of the information in DrawUI.XML is used in defining some parts of the CorelDRAW user interface - including the docker for Fit Objects to Path. GUIDs ("Globally Unique Identifiers") are used to identify (and then refer to) things. As an example, the GUID for the checkbox for "Rotate to follow path" is f2e05f34-d334-4c1b-80ac-87a1c677ae75. There seem to be several errors in DrawUI.XML having to do with GUIDs that are associated with Fit Objects to Path.
I share here the changes that I made to DrawUI.XML. This should not be considered authoritative. It is the result of me looking at the content in the files and trying to figure out a few things associated with the FOTP docker controls described earlier.
Fix 1: defining the caption for "Rotate to follow path".
<itemData guid="3f5e2c23-3df7-44b8-a824-772f96a18a94" type="statusText" fillAvailWidth="true" multiLine="true" length="30" toolTip="*TT('f2234f4e-1661-4f0e-a97a-54e4d2f393ab')"/>
<itemData guid="876f3f97-ab2d-4a6c-9311-9ecbba9d8d3c" type="statusText" fillAvailWidth="true" multiLine="true" length="30" toolTip="*TT('f2234f4e-1661-4f0e-a97a-54e4d2f393ab')"/>
Fix 2: putting the checkbox for "Treat subpaths as contiguous" in the docker.
<item dock="left" guidRef="498940d6-3450-4752-8762-9a7037dd35f5"/>
<item dock="left" guidRef="4e656d28-20d0-4286-b27a-06ac7570379e"/>
Fix 3: putting the checkbox for "Rotate to follow path" in the docker.
<item dock="left" guidRef="FitObjectsToPathExtension-RotateWithPath"/>
<item dock="left" guidRef="f2e05f34-d334-4c1b-80ac-87a1c677ae75"/>
Fix 4: putting the caption for "Rotate to follow path" in the docker.
<item dock="fill" guidRef="3f5e2c23-3df7-44b8-a824-772f96a18a94"/>
<item dock="fill" guidRef="876f3f97-ab2d-4a6c-9311-9ecbba9d8d3c"/>
After making the changes described to those four (4) lines in DrawUI.XML, then the docker looks like this, and those controls work:
Proceed with Caution.
DrawUI.XML is vitally important. If you break it, then don't expect CorelDRAW to work correctly (or at all). If you are going to work with something such as this, then it is good practice to make a "safe" copy of the file that you can go back to if necessary.
In the case of CorelDRAW, a "Repair" install will also reset DrawUI.XML.
DrawUI.XML is not specific to a particular user. Unlike the normal workspace files, this affects all CorelDRAW users on the machine.
This file is not stored in "user" space. You will need appropriate privileges in order to move files to that folder, rename them, edit them, etc.
Editing DrawUI.XML sounds tedious. Isn't there an easier way?
An easier way would be to not edit your existing DrawUI.XML, but to instead rename it, and then move a different DrawUI.XML into that folder - a version that already has the changes in place.
Is DrawUI.XML the same for all copies of CorelDRAW sold, in all countries? I have no idea. So, I offer no guarantees. These work on my system.
DrawUI - 2018 Update 1 - FOTP fix.zip (most recently updated 2019-12-17)
DrawUI - 2019 Update 3 - FOTP fix.zip (most recently updated 2019-12-17)
Wow, I'm impressed, how did you find that out? The fact that there seems to be a very "simple" fix for these errors, errors that definitely make the docker less useful and in some cases even worthless, makes me wonder what they are doing at the headquarter.
Looking at DrawUI.XML, there are some sections of code that have clues that indicate that they are associated with Fit Objects to Path. One can see some pattern to this and figure out something like, "That's the label for 'Rotate to follow path'", "That's the checkbox for 'Rotate to follow path'", and "That's the caption for 'Rotate to follow path'" (and analogous items for "Treat subpaths as contiguous").
After identifying a few of those things, I was able to search for their GUIDs to find the section of the file where those things are added to the docker. Enough of them were "right" to allow me to figure out the few that were "wrong".
So, it was sort of a puzzle game.