JPEG 画像を SWF に変換する

Flash Lite 1.1 では loadMovie で JPEG を読み込めない。SWF なら読み込める、ということで SWF::Builder を使ってでっち上げた。

use strict;
use Image::Size;
use SWF::Builder;

my $file = shift;
(my $swf = $file) =~ s/\.jpg$/.swf/;

my ( $width, $height ) = imgsize($file);
my $mc = SWF::Builder->new(
    FrameRate       => 3,
    FrameSize       => [ 0, 0, $width, $height ],
    BackgroundColor => 'ffffff',
    Version         => 4,
);
my $jpeg = $mc->new_jpeg($file);
$jpeg->place;
$mc->save($swf);

SWFTOOLS を使えば一発だったのね。