Perl

Imagerでサムネイルを生成する(短辺に合わせて) Cpan

Imagerでサムネイルを生成する(短辺に合わせて)

普通にサムネを作るなら(Imagerでサムネイルを生成する(元画像の比率を維持))みたいな感じで、長辺に合わせて縮小すればいいと思うんですが、、 短辺に合わせて縮小したい時もあるよね?(ないかな?) ってことで、やってみました。 use Imager; my $file = '/tmp/face.p…
Imagerで背景が透過したサムネイル(png)を生成する。 Cpan

Imagerで背景が透過したサムネイル(png)を生成する。

昨日生成した、サムネ画像(Imagerでサムネイルを生成する(元画像の比率を維持))ですが、背景に色をつけてしまうと、Webで使いにくいので、もう背景は透過にしてしまいます。 use Imager; my $file = '/tmp/face.png' my $new_file = '/tmp/ne…
Imagerでサムネイルを生成する(元画像の比率を維持) Cpan

Imagerでサムネイルを生成する(元画像の比率を維持)

いつもぐぐるので、メモ程度に。 Perlでサムネ画像を生成します。 元画像の比率は維持しつつ、生成された画像の縦横は指定したサイズです。 (比率が違う場合は、黒で塗りつぶし) use Imager; my $file = '/tmp/face.png' my $new_file = '/tmp/ne…
Xslateでtemplateファイルにアクセスする。 Amon2

Xslateでtemplateファイルにアクセスする。

XslateのCookbookに書いてあったんですけど、slurp_templateをoverrideすると元のtemplateにアクセスできるようです。 Amon2でやるならこんな感じ。 とりあえずMyApp以下にXslate.pm(名前はなんでもいいけど)ってのを作って、Viewからはそいつを呼…
Amon2で404ページを変更する。 Amon2

Amon2で404ページを変更する。

MyApp.pmに書いたものは、$c->で呼べるようになるんで、元々ある$c->res_404を上書きする感じで。 sub res_404 { my $self = shift; my $html = $self->create_view()->render('error.tx'); $…
「Perlの配列に一致する要素が格納されているインデックスを取得する方法」は自分ならこうやる。 Perl

「Perlの配列に一致する要素が格納されているインデックスを取得する方法」は自分ならこうやる。

Perlの配列に一致する要素が格納されているインデックスを取得する方法: 小粋空間 配列の中に該当の文字が何番目にでてくるかー・・? ってやつなんですけど、List::MoreUtilsってモジュールを使えば下記みたいに書ける。 firstidxってそのものズバリなやつがあるんで、それを使う。 us…
CentOS 6.xにGTopをインストールしたメモ CentOS

CentOS 6.xにGTopをインストールしたメモ

なんかPerlで書いてるコードがメモリリーク?してる気がしたんで、GTop入れてみた。 事前準備 libgtopのインストール Index of /pub/gnome/sources/libgtop から最新の*.tar.zxをDL xz -dv libgtop-2.30.0.tar.xz tar …
Perlのstateとは・・? Perl

Perlのstateとは・・?

Data::Validatorで使ったstateですが、そもそもこれ何よ?って話。 use 5.10.0; sub hoge { state $hoge = shift; return $hoge; } say &hoge('aaaa'); say &hoge('bbbb'); # …
DBIx::HandlerでMySQLに接続してみる。 Cpan

DBIx::HandlerでMySQLに接続してみる。

ORMを使わない場合のコネクションって何で取るのが主流なのか不明ですが、DBIx::Handlerってのを使ってる人が多そう?なので、ちょっと試してみます。 DBIx::Handler - search.cpan.org use DBIx::Handler; my $handler = DBIx::…
ログの表示を綺麗にしたい(Text::ASCIITable) Cpan

ログの表示を綺麗にしたい(Text::ASCIITable)

綺麗にというか、見やすく?w 本番用のログというよりは、デバッグ用のログ出力ですかね。 use Text::ASCIITable; my $t = Text::ASCIITable->new(); $t->setCols( 'id','name','date' ); $t->add…
StarletからGazelleに乗り換えてみた。 Cpan

StarletからGazelleに乗り換えてみた。

Starletより速いらしいので、とりあえずインストールして使ってみた。 Gazelle インストール cpanm Gazelle 実際のところは、cpanfileに書いてcarton installしましたが。 Starlet -> Gazelle plackup -s Starlet を pla…