use strict; use warnings; use diagnostics; use Imager; use Imager::QRCode; use Imager::File::JPEG; my $qrcode = Imager::QRCode->new ( size => 2, margin => 2, version => 1, level => 'M', casesensitive => 1, lightcolor => Imager::Color->new(255, 255, 255), darkcolor => Imager::Color->new(0, 0, 0), ); my $img = $qrcode->plot('PDJ Test 1'); my @type = ('jpeg', 'png', 'gif', 'tiff', 'bmp', 'pnm', 'raw', 'sgi', 'tga'); for (@type) { my $fileName = "image.$_"; open my $image, '>', $fileName or die $!; binmode $image or die $!; my $imageOut = $img->write(fh => $image, type => $_) or die "Creating $fileName: $!"; print $image $imageOut; }