The discussion of O2D graphics exchange formats has clarified the different requirements for vector graphics interchange:-
Req 1: Export for display in apps such as document processors e.g. MS Word and Pages;
Req 2: Export for editing in apps such as drawing packages e.g. Illustrator and EazyDraw;
Req 3: Export for re-use in the originating app or closely associated ones using same data format.
Req 3 is normally satisfied by proprietary formats that include app-specific data, not just raw graphics. Its only relevance is that formats such as SVG and PDF make provision for including such data making it possible to have a single data structure for both export of graphic data and app-specific data saving and interchange.
Req 1 and Req 2 were satisfied by the PICT data format on the Mac and EMF under Windows. PICT has become obsolete – in particular does not support Unicode – and needs replacing.
The only suitable replacement for req 1 is PDF since neither Word or Pages imports SVG but both import vector graphics in PDF.
Req 2 is more complex. Vector PDF works well in Illustrator – all the objects in it may be edited (showing that PDF can be an O2D interchange format). However, in other apps such as EazyDraw vector PDF is imported as a unitary, uneditable vector graphics object, suggesting that that the effort to fully decode it as objects is significant.
SVG works very well as a graphics interchange format with both Illustrator, EazyDraw and an increasing number of graphic editing apps on the Mac. However, in all cases the learning curve to achieve full SVG import has been several years – SVG export from an app using vector graphics is very easy but full SVG import is extremely diffucult because the spec is so comprehensive and there are so many different ways of creating the same visual effect.
I don’t think anyone has suggested that Xojo provide full SVG or PDF import. We have been discussing the interchange of O2D graphics which requires a highly limited subset of both SVG and PDF.
If only one format is provided, then only PDF fully satisfies req 1 and reasonably satisfies req 2.
However, providing SVG as a second export format is not a major task. The O2D primitives translate quite simply to SVG. A DTD within a Xojo namespace for O2D would provide a nice packaging of O2D for graphics interchange and incorporation into proprietary XML DTDs for graphics structures in Xojo apps.
Notes
It is useful to be able to experiment with vector graphics interchange with apps that are important to your users. Dave Mattson’s EazyDraw is helpful because it provides full control over what data formats are copied to the clip. Apple’s Clipboard Viewer is helpful to see what is actually in the clip, particularly as OS X does some automatic conversions of bitmap formats to TIFF.
Keynote exports vector graphics to Pages in a proprietary format but makes only bitmap formats available to other apps in the clip. However, it can export a vector PDF file that, for example. Illustrator can open and edit.
Word 2008 and 2011 import vector graphics in PDF and these print much more clearly than equivalent bitmap graphics (including bitmaps created from upscaled vector graphics that look great on the screen but muddy when printed).