Hi, Don Demcsak (who rebranded himself to Don XML) has started the SVG2XAML open-source project that - surprise, surprise - converts the open royality-free SVG format to Microsoft's upcoming all-in-one Windows-only XAML format. Somehow Don XML misses the point. Shouldn't it be the other way round?
Anyway, Don XML introduces himself on his blog story "I'm Not Don Box, but I wish I Were": No I'm not Don Box. I'm Don Demcsak, but DonXML has been my nickname since about 1999, since my days on VBXML and svg-developers discussion groups, so I decided to keep the handle. It was given to me by my coworkers and while most folks still associated Don Box with COM. In the world of Google you need an identity that people can spell, and most folks (Westerners) can't pronounce or spell my last name correctly on a consisitent basis. I've been an evangelist for XML and SVG since 1999 and .Net since 2001, but my day job is an indie .Net consultant out of New Jersey. I was the TE on Kurt Cagle's SVG Programming book out on APress. I am also the PM for the SharpVectorGraphics open source project bringing a native SVG rendering engine to .Net. To get back to SVG2XAML Don XML writes in his blog: I created a new GDN [Got Dot Net] Workspace for this version of the code, and called it Svg2Xaml. It is really just SharpVectors on Longhorn, but I think people will find it easier with that name. I put all the source into version control, and created two releases, one of just the binaries, and another a zip file with all the source. Any and all changes will be made to the SharpVectorGraphics codebase, and migrated to this project. SharpVectors is by no means complete, but will render most SVG. If you want to join the fun, the team is always looking for help. Now onto the fun stuff. I used the standard tiger SVG example as a base SVG example (the URL can also be found in the SharpViewer’s combo box), and had the viewer render it (here’s a raster version for those with an SVG viewer). I then setup up my default printer to the Windows Client Printer Driver. I haven’t figured out how to change the printer properties thru code, so you are going to also have to go to the Advanced tab of the Printer Properties, click the Printing Defaults. On the General tab, change the Output Format to Windows Client Markup File and click OK. If you don’t do this, you will get the container version, which is used in the Digital Rights Management support (not the open XAML format). Then just click, File|Print and the Printing window will be displayed and then the SaveAs dialog box is displayed. The save as type should be set to xaml at this point. If it says container, then you didn’t set the Output format of the Print Driver to XAML. Save the file, and voila, you have XAML. So the net process is conversion of SVG to a GDI Graphics object (via the SharpVectors GDI Rendering engine. The graphics object is sent to the printer, and the WCPD reverse engineers the graphics object to XAML. You are not going to get any reuse of graphic objects with this model. If a path is 20 different places, it will show up 20 different times in the XAML. You will have to convert the path to a component and reuse as needed, but at least you don’t have to convert all the paths yourself. So, if you are a graphic artist, and want to start creating some stuff with XAML (aka Avalon Elements) you can use Adobe Illustrator (version 10 or CS) and save to the SVG format. Then you can convert the SVG to XAML using Svg2Xaml (aka SharpVectors on Longhorn). Not the way you will be doing it in the future, but it will work for now. Full story @ http://workspaces.gotdotnet.com/svg2xaml (SVG To XAML Converter) and http://www.donxml.com (Don XML Blog) and http://www.sharpvectors.org (SVG# Front Page) and http://sourceforge.net/projects/svgdomcsharp (SVG# Project Page) - Gerald ------------------------------------------------------- This SF.net email is sponsored by: SF.net Giveback Program. Does SourceForge.net help you be more productive? Does it help you create better code? SHARE THE LOVE, and help us help YOU! Click Here: http://sourceforge.net/donate/ _______________________________________________ xul-announce mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/xul-announce