#この青空に約束を― #アップデート差分合成 use Image::Magick; use File::Copy; mkdir up_out; opendir(DIR,"./Update"); my @file = readdir(DIR); close(DIR); @file = grep(/visual/i,@file); my @diff = grep(!/A\.bmp/,@file); my @base = grep(/A\.bmp/,@file); push (@base,"VISUAL_SAERI_04C.bmp" , "VISUAL_SAERI_04D.bmp" ); map{ my $left = 0; my $top = 0; unless ( $_ eq "VISUAL_SAERI_04C.bmp" or $_ eq "VISUAL_SAERI_04D.bmp" ){ if ( $_ eq "VISUAL_NAOKO_08B.bmp" ){ $left = 341; $top = 136; } my $image = Image::Magick->new; my $image2 = Image::Magick->new; my $basefile = $_; $basefile =~ s/[A-Z]\.bmp/A\.bmp/; $image -> Read("./Update/$basefile"); $image2 -> Read("./Update/$_"); $image2 -> Transparent(color=>"#000000"); $image -> Composite( image=>$image2 ,compose=>"Over" , x=>$left ,y=>$top ); $image -> Write("./up_out/$_"); undef $image; undef $image2; } }@diff; map{copy( "./Update/$_","./up_out/$_")}@base; exit;