DITA and XMetaL Discussion
csmith February 8, 2011 at 9:43 pm
Problem referencing SVG file in XMetaL 6 and Windows 7February 8, 2011 at 9:43 pmParticipants 4Replies 5Last Activity 11 years, 11 months ago
We are testing systems for a planned migration to Windows 7 workstations. We have installed XMetaL 6 (Version#: 6.0.1.030), and the Adobe SVG Viewer Version 6 (as recommended on the MS Windows 7 Compatibility web page). We have run into a problem referencing SVG graphics. We use the Astoria Software CMS, but the problem also occurs in XMetaL 6 on Windows 7 outside of the CMS repository.
We insert a
element from the Element List. XMetaL auto-generates a fig element with an empty element and empty element with a red X box. Clicking on the red X box brings up the Image or Figure Properties dialog, with the Text Wrapping already set to break. We browse to and select an SVG image file, and click OK. XMetaL issues a message that it has stopped working and closes with an unidentified error. The same procedure selecting other image file formats (JPG, GIF) does not cause XMetaL to quit.
Referencing an SVG file using other approaches seems to work ok. For example, we insert a
element from the Element List, then delete the empty element with the red X box. Then we insert an element from the Element List. The Insert Image or Figure dialog appears (not the Image or Figure Properties dialog, as before). We can also insert an element and reference the file, then “wrap” the image in a element. However, we now have to manually set the Text Wrapping to break.
Also, we can use the Insert > Figure with Title menu, which brings up the Choose Figure file dialog–again, a different dialog from the other approaches. Again, this requires us to manually set the Text Wrapping to break.
The problem appears to be related to the Properties dialog which appears when clicking the red X. The same approach works fine in XMetaL 5.1 on XP workstations.Derek Read February 9, 2011 at 2:23 am
Reply to: Problem referencing SVG file in XMetaL 6 and Windows 7February 9, 2011 at 2:23 am
You may wish to ask Astoria about this to see if they can reproduce the issue in their environment (we do not test the Astoria software here). However, I will try to reproduce this crash without Astoria installed as well.
Are you running McAfee anti-virus software on this computer? There is a known conflict with that software and we have released a hotfix for a file called XFRunner.dll that seems to have addressed the issue for a number of our clients. Even if you are not running McAfee installing the hotfix is something to try as it may resolve this issue for you. http://forums.xmetal.com/index.php/topic,915.0.html The XFRunner.dll is the main part of our code that drives some of our dialogs (and the dialog in question is one of these).
If you select (menu option) Insert > Figure with Title, the “Insert Image” dialog is displayed and at that point you can set the “Text wrapping” option (in the dialog) to “break” (resulting in @placement being set to “break” in the XML source). Or is that what you want to avoid having to do when you say “manually set”?csmith February 9, 2011 at 6:42 pm
Reply to: Problem referencing SVG file in XMetaL 6 and Windows 7February 9, 2011 at 6:42 pm
Because the behavior is the same either in the Astoria environment or in a stand-alone workstation environment, I don't think the problem is related to Astoria.
We do not use McAfee anti-virus software. We use Trend Micro Office Scan. What is the risk of installing the Hot Fix in this case?
Do you have any explanation as to why the method we use works for other graphic file formats, but fails on SVG files?
All our internal documentation and training use the Element List method for referencing an image file inside aDerek Read February 9, 2011 at 9:16 pm
Reply to: Problem referencing SVG file in XMetaL 6 and Windows 7February 9, 2011 at 9:16 pm
SVG is a special case as XMetaL Author does not have native rendering support for SVG. In order to render it we insert a copy of the ActiveX control version of Internet Explorer (this is called the “WebBrowser” control and is used by lots of things, like MSN Messenger, Windows Explorer, etc). We tell this embedded copy of IE to load the SVG image. If IE has a plug-in for rendering SVG then it displays the SVG, if not it renders the SVG as XML source. If you have the Adobe SVG Viewer plug-in installed you see the SVG (both inside IE standalone and inside a DITA document in XMetaL Author Enterprise).
As to why the crash is occuring in this case for you I'm not sure, except that there is a lot more going on when an SVG is loaded vs other formats that the product has native rendering support for (JPG, GIF, BMP, TIFF, PNG, WMF, EPS, EMF and a few others). What is occuring when you click on the red X (missing image icon) to open the dialog is likely more the fact that the dialog used to browse for an image is being opened rather than an IE or SVG plugin issue (though there might be some lingering effects from the last time IE attempted to display an image that didn't exist or something like that). Once we can reproduce this here we will have development look into it.
McAfee is suspect because it changes the way Windows scripting functions by intercepting scripts when they are passed to WSH (Windows Script Host). Other virus scanners may do the same type of thing.
Trying the updated XFLayout.dll should not hurt. The worst case scenario is that the crash will continue and you can always undo the installation of that DLL if it does not seem to help.csmith February 10, 2011 at 7:23 pm
Reply to: Problem referencing SVG file in XMetaL 6 and Windows 7February 10, 2011 at 7:23 pm
I applied the XFRunner.dll hot fix as you recommended. I tested in a stand-alone XMetaL 6 environment (not through Astoria). It did not fix the problem.
What is the XFLayout.dll you recommended?
I am still confused as to why we can reference SVG files successfully in XMetaL 6 using several other methods. Just not the red X method.Derek Read February 11, 2011 at 12:30 am
Reply to: Problem referencing SVG file in XMetaL 6 and Windows 7February 11, 2011 at 12:30 am
My mistake (typo) in reference to XFLayout.dll (which is actually XFLayout.exe). It has nothing to do with this issue. It is a tool that ships with XMetaL Developer and is used to create XFT forms for consumption by XMetaL Author and XMAX and of no use in resolving this issue.
It looks like we can reproduce your issue here now without any specific configuration required. I will be trying to get this to happen consistently in order to describe the issue to our development team so they can attempt to address it in a future release.
- You must be logged in to reply to this topic.