Sledge::Plugin::SaveUploadImage - アップロードされたファイルをjpg,gif,png形式で保存する
package Your::Pages; use Sledge::Plugin::SaveUploadImage;
my $upload = $self->r->upload('upload_file');
## jpegとして保存 (500x300にリサイズ)
my $path_saved = $upload->save_as_jpg( '/path/to/save/dir/', {width=>500, height=>300} );
## gifとして保存 (幅500にリサイズ。高さは自動調整)
my $path_saved = $upload->save_as_gif( '/path/to/save.gif', {width=>500});
## pngとして保存 (リサイズなし) my $path_saved = $upload->save_as_png( '/path/to/save' );
Sledge::Plugin::SaveUploadImageはアップロードされたファイルを簡単に jpeg,gif,pngのいずれかの形式で保存するためのSledgeプラグインです。 画像のリサイズも行えます。
Sledge::Plugin::SaveUploadImageをuseするとアップロードオブジェクトに、 save_as_jpg, save_as_gif, save_as_pngの3つのメソッドがインポートされます。
各メソッドのインターフェースは共通で、第1引数には保存先のパスを、 第2引き数にはイメージのサイズを指定します。
返値は実際に保存されたファイルへのパスです。
保存先のパスが/(スラッシュ)で終っている場合、パスを保存先のディレクトリとみなし、 内部で生成したファイル名でそのディレクトリ内に保存します。
サイズは省略可能で指定しない場合はリサイズを行いません。 widthのみ指定した場合は縦横比固定でheightを自動的に決定します。
画像の保存にImage::Magickを利用しているのでこのプラグインを利用するには ImageMagickのインストールが必要です。
Yasuhiro Horiuchi <horiuchi@vcube.com>