- ベストアンサー
GIF画像のサイズを取得するには
http://~から始まるGIF画像の縦と横のサイズを取得したいのですが、どうすればいいでしょうか。 無理ならサイトルートから始まる指定が可能な方法(/image/logo.gifなど)で同様に。 よろしくお願いします。
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
画像のサイズを取得するにはImage::Sizeを利用するのが簡単です。 利用方法はこんな感じ。$globe_x, $globe_yにそれぞれの値が入ります。 use Image::Size; # Get the size of globe.gif ($globe_x, $globe_y) = imgsize("globe.gif"); Windowsの場合はppmからImage-Sizeを検索してインストールしてください。 もし、サーバーにインストールできない場合はhttp://cpan.orgよりImage::Sizeをダウンロードし、サーバーにpkgディレクトリ(名前は何でもいいですが)を作成しアップロードします。そしてスクリプト内から use lib 'pkg'; として use Image::Size; とするとImage::Sizeモジュールを使用することが出来ます。
その他の回答 (4)
- umasikajiro
- ベストアンサー率67% (545/803)
#4さんありがとうございます なるほどImageSize じゃなくて Image::Size ですか、 どうも検索してもそれらしいのがヒットしないと思った、、、 http://perldoc.jp/docs/modules/Image-Size-2.99/Size.pod を見ると スカラー・リファレンスを渡してやれば file名じゃなくて画像データからサイズを取得できると有ったので cpanシェルで install Image::Size してから LWPと組み合わせて、、、 use Image::Size; use LWP::Simple; $url='http://****.com/~tarou/test.gif'; $gif= get $url; ($gif_x, $gif_y) = imgsize(\$gif); print "$url X = $gif_x Y = $gif_y \n"; __END__ これで他のwebサーバー上にある画像fileのサイズが取得できました。
- umasikajiro
- ベストアンサー率67% (545/803)
あわわ、これってperlでの事ですよね。 失礼しました http://www.phoenix-c.or.jp/~olfa/software/48_module_appendsize.html によれば ImageSizeだそうですが、サーバー内のしか出来ないようですので LWPなどでGETしてから サイズを取得するとかしか無いのかも知れません
お礼
ちょっと難しいですね・・ use LWP::Simple;でソケット通信してから取得すればいけると思いますが・。 そんなに知識ないもんで簡単なのしかできません。 ありがとうございました。
- umasikajiro
- ベストアンサー率67% (545/803)
ブラウザがFireFOXなら 画像の上で右クリックして>画像を表示 を選ぶと、その画像だけが表示され 一番上のタイトルバー欄に hogehoge.gif(GIF画像、 200x100 px) などと表示されます ダウンロードは http://www.mozilla-japan.org/products/firefox/
お礼
すみません、Perlプログラム内で取得したいんです。
- mayrcom
- ベストアンサー率44% (16/36)
間違ってたらごめんなさい。 対象のgif画像を右クリックでプロパティを開いた時のサイズ では、ダメなのでしょうか? ピクセル単位ですが縦横のサイズが出てくると思います。
お礼
すみません、Perlプログラム内で取得したいんです。
お礼
できました! ありがとうございましたm(_ _)m