• ベストアンサー

GIF画像のサイズを取得するには

http://~から始まるGIF画像の縦と横のサイズを取得したいのですが、どうすればいいでしょうか。 無理ならサイトルートから始まる指定が可能な方法(/image/logo.gifなど)で同様に。 よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • mflow
  • ベストアンサー率63% (42/66)
回答No.4

画像のサイズを取得するには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モジュールを使用することが出来ます。

is_may
質問者

お礼

できました! ありがとうございましたm(_ _)m

その他の回答 (4)

回答No.5

#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のサイズが取得できました。

回答No.3

あわわ、これってperlでの事ですよね。 失礼しました http://www.phoenix-c.or.jp/~olfa/software/48_module_appendsize.html によれば ImageSizeだそうですが、サーバー内のしか出来ないようですので LWPなどでGETしてから サイズを取得するとかしか無いのかも知れません

is_may
質問者

お礼

ちょっと難しいですね・・ use LWP::Simple;でソケット通信してから取得すればいけると思いますが・。 そんなに知識ないもんで簡単なのしかできません。 ありがとうございました。

回答No.2

ブラウザがFireFOXなら 画像の上で右クリックして>画像を表示 を選ぶと、その画像だけが表示され 一番上のタイトルバー欄に hogehoge.gif(GIF画像、 200x100 px) などと表示されます ダウンロードは http://www.mozilla-japan.org/products/firefox/

is_may
質問者

お礼

すみません、Perlプログラム内で取得したいんです。

  • mayrcom
  • ベストアンサー率44% (16/36)
回答No.1

間違ってたらごめんなさい。 対象のgif画像を右クリックでプロパティを開いた時のサイズ では、ダメなのでしょうか? ピクセル単位ですが縦横のサイズが出てくると思います。

is_may
質問者

お礼

すみません、Perlプログラム内で取得したいんです。

関連するQ&A