This repository was archived by the owner on May 15, 2022. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 126
Shape Export
claus edited this page Aug 13, 2010
·
21 revisions
With as3swf you can export any shape contained in a SWF, including font shapes of embedded fonts, to any format. You can redraw shapes with Actionscript at runtime, or export source code (Actionscript, Objective-C, SVG, etc).
public function ShapeExport() {
var request:URLRequest = new URLRequest("any.swf");
var loader:URLLoader = new URLLoader();
loader.dataFormat = URLLoaderDataFormat.BINARY;
loader.addEventListener(Event.COMPLETE, completeHandler);
loader.load(request);
}
private function completeHandler(e:Event):void {
var swf:SWF = new SWF();
swf.loadBytes(URLLoader(e.target).data as ByteArray);
for (var i:uint = 0; i < swf.tags.length; i++) {
var tag:ITag = swf.tags[i];
if (tag is TagDefineShape) {
TagDefineShape(tag).export();
}
}
}
The export()
method expects a SAX-style callback handler object that implements IShapeExportDocumentHandler
. If no such handler is provided, it uses DefaultShapeExportDocumentHandler
which traces Actionscript commands.
So far only simple strokes and fills are supported (no gradient or bitmap fills, etc). I’m working on it.