1000以上のルートを、ユーザごとの地図に投影する方法(6) - 複数のタイル画像を重ね合わせるための方法
あらかじめ、線以外の領域を透過色として作成したルートの画像を
用意しておいて、Image::Magickを使って2つの画像を重ね合わせます。
画像1
画像2
重ね合わせた後
この重ね合わせのコードはこちら。
#!/usr/local/bin/perl -w use strict; use Image::Magick; # 1枚目 my $file = "sample.png"; my $image = Image::Magick->new; $image->Read($file); # 2枚目 my $file2 = "sample2.png"; my $image2 = Image::Magick->new; $image2->Read($file2); # 画像を合成 $image->Composite(image=>$image2, compose=>'Over', x=>0, y=>0); $image->Transparent(color=>'#FFFFFF'); # 元画像の透明色(不要かも) # 合成した画像を画面に出力 print "Content-type: image/png\n\n"; binmode STDOUT; $image->Write('png:-'); # ファイルに記録する場合はこちら $image->Write(filename => 'outfile.png'); undef $image; exit;
これで複数の記録のタイル画像を合わせて、1ユーザの
複数ルートのタイル画像群を作成できるようになります。
次は、ユーザごとに作るスクリプトを紹介して
終りにしたいと思います。