Many of you will have seen the recent announcement from Autodesk and Microsoft regarding DWFx. I thought I’d spend some time talking about the technology behind the announcement and the impact on developers using DWF. I also wanted to mention Project Freewheel briefly once again.
Here are the recent DWFx-related announcements, from Scott Sheppard’s Beyond the Paper blog:
I’ve put the below information in a Q&A format (which seemed appropriate as I was writing it). If you have further questions about this, be sure to post a comment or send me an email.
What is DWFx?
DWFx is the next generation of the DWF format – one that is more closely aligned with emerging technology standards sponsored and supported by Microsoft. The near-term impact is around 2D publishing: as soon as next year, many of our design applications will publish to the DWFx format. The new 2D portion of DWFx is based on (or in tech-speak “is a specialization of”) the XML Paper Specification (XPS) format, an open format for published document interchange.
Why is Autodesk doing this?
For a number of reasons, but this is a big one: DWFx is supported natively on Windows Vista – no additional viewer needs to be installed to view these files – which greatly increases the attraction and reach of the format.
What is XPS?
From the Microsoft website:
“The XML Paper Specification (XPS) makes modern documents possible for all. Simply put, XPS describes electronic paper in a way that can be read by hardware, read by software, and read by humans. With XPS, documents print better, can be shared easier, be archived with confidence, and are more secure.
Microsoft has integrated XPS-based technologies into the 2007 Microsoft Office system and the Microsoft Windows Vista operating system, but XPS itself is platform independent, openly published, and available royalty-free. Microsoft is using XPS to bring additional document value to its customers, its partners, and the computing industry.”
What about non-Vista platforms?
The XPS Viewer is also part of the .NET Framework 3.0 install, and the “XPS Essentials Pack” download, available for Windows 2000 & XP.
What about the existing DWF format?
DWFx is the eventual – not immediate – replacement for DWF. It is basically the next version of the DWF standard. For now, largely due to the fact it will not immediately support the existing features of DWF, it will be another publishing option.
For example, DWFx does not support 3D, for now. It does support metadata, but this will only be viewable in the separately downloadable DWF Viewer. In time, DWFx will support all existing DWF functionality.
What’s the best way to read & write the new DWFx, from a programmatic perspective?
As DWFx is based on XPS, which is XML packaged up according to the Open Packaging Conventions (OPC – which is basically the same as having the various files ZIPped up, but also includes support for digital signatures and rights management), you could use your favourite text editor and WinZIP to create a DWFx file.
That said, in order to cope with the complexity of the relationships between the various components of a DWFx file, it’ll be much easier to make use of the DWF Toolkit (of which version 7.4 will support reading/writing DWFx). We’re adding a compatibility layer between the existing DWF 6 APIs that are part of the current DWF Toolkit, so that – hopefully – existing code will be 95% compatible with the new DWFx format.
Also, in time you will also be able to use all our existing DWF publishers to create DWFx content (including AutoCAD, AutoCAD LT, Inventor, Revit, Map 3D, and so on - as well as free tools such as DWG TrueView, DWG TrueConvert and DWF Writer).
What about the ObjectARX metadata publishing APIs?
The AutoCAD APIs for adding custom metadata to DWFs during publication will continue to function with DWFx (although, as mentioned, the metadata will not be visible in the XPS Viewer).
And something truly incredible: Project Freewheel also now supports 3D - Project Freewheel: 3D Support Added. You have to try it – it really needs to be seen to be believed.