A Flash Player emulator written in Rust
Go to file
Mike Welsh e0836d1f34 Update README 2016-08-29 13:12:26 -07:00
src Initial commit 2016-08-29 00:51:32 -07:00
test/swfs Initial commit 2016-08-29 00:51:32 -07:00
.gitignore Add .gitignore 2016-08-29 00:52:02 -07:00
Cargo.toml Remove incorrect local dependency 2016-08-29 12:48:16 -07:00
LICENSE.md Initial commit 2016-08-29 00:51:32 -07:00
README.md Update README 2016-08-29 13:12:26 -07:00

README.md

swf

A Rust library for reading and writing the Adobe Flash SWF file format.

# Cargo.toml
[dependencies]
swf = "0.1"

Reading

extern crate swf;

fn main() {
    let mut f = try!(File::open("file.swf"));
	let mut reader = BufReader::new(f);
	let swf = swf::read_swf(reader);
	println("The SWF has {} frames", swf.num_frames);
}

Writing

extern crate swf;

use std::io::BufWriter;
use std::fs::File;
use swf::*;

fn main() {
    let f = File::create("file.swf").unwrap();
	let writer = BufWriter::new(f);
	let swf = Swf {
		version: 6,
		compression: Compression::Zlib,
		stage_size: Rectangle { x_min: 0f32, x_max: 400f32, y_min: 0f32, y_max: 400f32 },
		frame_rate: 60f32,
		num_frames: 1,
		tags: vec![
			Tag::SetBackgroundColor(Color { r: 255, g: 0, b: 0, a: 255 }),
			Tag::ShowFrame
		]
	};
	swf::write_swf(&swf, writer).unwrap();
}

License

swf-rs is distributed under the terms of the GPLv3 license.

See LICENSE.md for details.