#!/usr/bin/perl -w use strict; my $jpg = shift or die "$!\n"; my $data = get_file($jpg); my @res = sizeJPG($data); print "$jpg width $res[0] height $res[1]\n"; sub sizeJPG { return unless $_[0]; my ( $width, $height ); ( $height, $width ) = unpack( "nn", $1 ) if $_[0] =~ /\xFF\xC0...(....)/; return ( $width, $height ); } sub get_file { open FILE, $_[0] or die $!; binmode FILE; local $/; my $data = ; close FILE; return $data; }