use strict; my @lines = ; my $maxsize = 0; map {chomp; $maxsize = ($maxsize>length)?($maxsize):(length)} @lines; print "max size: $maxsize\n"; my $bar = '*' x ($maxsize +4) . "\n"; my $format = '%' . $maxsize . '.' . $maxsize . 's'; foreach (@lines) { print($bar); printf("* $format *\n", $_); print($bar); } __DATA__ some lines that are of different sizes Some small really small. ----------------some large--------------------- --------------------------------------------------some huge-------------------------------------------------- ...