JPEGの縦横サイズ取得について。
立て続けの質問をお許しください。
JPEGの縦横サイズを取得するアルゴリズムを考えているのですが、以下のページを参考にしています↓
http://tohoho.wakusei.ne.jp/lng/200003/00030402.htm
縦横サイズの情報を探すためには、
***上のURLより引用*****************************
JPEG(ベースラインJPEGの場合)ファイルの場合SOFn マーカー FFC0 (Hex) を見つけてここから始まる.SoF0 セグメント FF の位置を0 として相対オフセット、位置 5 から、2Bytes に高さ 7 から 2Bytesに幅
****引用終わり*******************************
とある通り、マーカーFFC0を探さなければいけないらしいのですが、自分なりに色々調べながらマーカー位置を探すのに以下のような処理を考えました。
open(IN, "aaa.jpg") || die;
binmode IN;
while (1) {
if(getc(IN) == 0xFF){
if(getc(IN) == 0xC0){last;}
}
}
上の処理は、FFC0が見つからなかったときにループを抜ける処理をかいていませんが、見つかればループは抜けるはずなので、それは書いてません。
ですが、こう書いても無限ループに陥ってしまいます。
なにがいけないやら分かりません。
どこがいけないでしょうか。
お礼
分かりやすい回答をどうもありがとうございます! 助かりました!