« 画像を「上下」「左右」同時に反転させる | メイン | 画像の角度を指定し回転する [その2] »

カテゴリー:画像回転 

画像の角度を指定し回転する [その1]

このエントリーを含むはてなブックマーク  livedoorクリップ  画像の角度を指定し回転する [その1]をdel.icio.usに追加  画像の角度を指定し回転する [その1]をYahoo!ブックマークに追加  画像の角度を指定し回転する [その1]をニフティクリップに追加

ImageMagickを使用し、画像の角度を指定し、その角度分回転させたい。FlipメソッドFlopメソッドはそれぞれ180度の回転しかできないが、Rotateメソッドを用いれば自由に角度を調整できる。
○Befor   ○After
オリジナル画像 反転画像

#!/usr/bin/perl

;#
;#角度を指定し、画像を回転する
;#

use Image::Magick;

#-------------------------------------------#
#初期設定
#-------------------------------------------#
#-- 元画像 --#
my $source = './sample_org1_s.jpg';

#-- 回転する角度 --#
my @list = (
    0, 30, 60, 90, 120, 150, 180, 210, 240, 270, 300, 330, 360
);


#-------------------------------------------#
#画像を30度ずつ回転する
#-------------------------------------------#
foreach my $degree (@list){
	#-- インスタンス生成 --#
	my $image = Image::Magick->new;

	#-- 画像を読込む --#
	$image->Read($source);

	#-- 回転 --#
	$image->Rotate(degrees=>$degree);

	#-- 画像を保存する(JPEG) --#
	$image->Write("./image_$degree.jpg");

	#-- オブジェクト削除 --#
	undef $image;
}


以下が実行結果。
特に気をつけたいのは、実行結果を見て分かる通り、画像の縦横のサイズが固定され、その中で回転をする点。そのため角度によってその縦横のサイズ内で拡大や縮小が行われる。少々クセの強い処理という点にご注意。

  1. 0度回転
    回転画像
  2. 30度回転
    回転画像
  3. 60度回転
    回転画像
  4. 90度回転
    回転画像
  5. 120度回転
    回転画像
  6. 150度回転
    回転画像
  7. 180度回転
    回転画像
  8. 210度回転
    回転画像
  9. 240度回転
    回転画像
  10. 270度回転
    回転画像
  11. 300度回転
    回転画像
  12. 330度回転
    回転画像
  13. 360度回転
    回転画像



トラックバック

このエントリーのトラックバックURL:
http://katsubemakito.net/mt/mt-tb.cgi/586

この一覧は、次のエントリーを参照しています: 画像の角度を指定し回転する [その1]:

» 画像の角度を指定し回転する [その2] from CGI・Perl例文集
ImageMagickを使用し、画像の角度を指定し、その角度分回転させたい。基本... [詳しくはこちら]

コメントを投稿

(いままで、ここでコメントしたことがないときは、コメントを表示する前にこのブログのオーナーの承認が必要になることがあります。承認されるまではコメントは表示されません。そのときはしばらく待ってください。)

VPSレンタルサーバー




クリエイティブ・コモンズ・ライセンス
このブログは、次のライセンスで保護されています。 クリエイティブ・コモンズ・ライセンス.