How AutoCAD Can Mess You Up Behind Your Back (Bug Watch AutoCAD Tutorial)30 Sep, 2008 By: Steve Johnson
Interoperability issues within a single DWG format and AutoCAD's foot fetish cause problems.
Mtext Mayhem (2008 to 2009)
Let's say you're a multibillion-dollar international consulting engineering company using AutoCAD 2008 to produce large sets of drawings for a major client using AutoCAD 2007. You are not expecting any interoperability problems because both companies are using plain AutoCAD, and the DWG format is the same for AutoCAD 2007, 2008, and 2009. You use extensive quality control procedures to ensure that you are providing a top-quality product, yet your client is complaining that your drawings are poor efforts that have mtext objects and leaders scattered all over the place. You ask for the drawings back and check them carefully. They look perfect to you, so you return them to the client. The client complains that the drawings are still garbage, your staff is incompetent, and your company doesn't care about the quality of the product it produces.
Sadly, this is a true story. What caused it to happen?
AutoCAD 2008 introduced some long-requested mtext paragraph formatting features that allow users to manipulate mtext in ways that were not previously possible. When AutoCAD saves the drawing, the paragraph formatting is stripped from the mtext proper, but the complete mtext formatting is also stored intact as hidden data. That means that when opening the drawing, AutoCAD 2008 or 2009 can resurrect the formatting so that it survives the round trip. That works fine as far as it goes, but it doesn't help users of AutoCAD 2007 and earlier, who are stuck with broken drawings.
Strictly speaking, this is not a bug. Somebody has actually designed AutoCAD to work this way. The problem is that this design is manifestly inadequate. There is no way a design like this should have made it into the delivered product. A feature that effectively corrupts the visual integrity of drawings is not a feature worth having, no matter how many times it appears on wish lists.
AutoCAD 2009 Mtext formatting is lost in AutoCAD 2007.
The same issue applies to the annotative scaling feature introduced by AutoCAD 2008. If you use that feature extensively, your drawings are going to look pretty messed up to your AutoCAD 2007-using clients unless you explicitly turn on the visual integrity toggle in the Options command and pay the heavy performance penalty for doing so. At least with annotative scaling, visual integrity is available as an option.
Workaround: For the company in the story, the medium-term workaround is to switch to AutoCAD 2007 rather than going ahead with plans to upgrade to 2009. The company will also need to mandate the use of pre-2008 releases of AutoCAD when contracting out work. Trying to prevent people from using the new features is impractical except on sites with a small number of users.
In the short term, large numbers of drawings must be fixed up. These drawings contain an unknown number of visual integrity problems that are not visible to the AutoCAD 2008 users who now have the job of cleaning up the mess. What can they do?
I hesitate to suggest this nasty, horrible kludge as a workaround, but one method you could consider is exploding the mtext objects in question. For example, you could paste the following into the command line, assuming the objects in question are all within the current space:
_.EXPLODE (ssget "_X" '((0 . "MTEXT") (1 . "*\\p*")))
If you do decide to use this method, make sure your clients are happy with the results on a few sample drawings before you go mad with the dynamite on all your drawings.
Sore Feet (2007 to 2009)
The QuickCalc palette, when docked, doesn't like letting you choose what units to convert from and to in the Units Conversion section. It does all sorts of weird stuff, like rolling up the popup list by itself, choosing the units for itself, and then not letting you change from what it has chosen. Its choice is often, but not always, feet.
Workaround: Undock the palette, change the settings to what you want, then dock it again.