This repository has been archived by the owner on May 15, 2022. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 127
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 instance that implements IShapeExportDocumentHandler
. If no such handler is provided, it uses DefaultShapeExportDocumentHandler
which simply traces Actionscript commands to the console.
So far only simple strokes and fills are supported (no gradient or bitmap fills, etc). I’m working on it.