use strict;
use warnings;
use GD;

my $percent = 50;

open (DAT, "stifte1.jpg") || die "Kein Bild\n";
my $source = newFromJpeg GD::Image(\*DAT) || die;
close DAT;

# Bild der gleichen Groesse kreieren
my $width = $source->width;
my $height = $source->height;

my $destination = new GD::Image($width,$height);
my $white = $destination->colorAllocate(255,255,255);
$destination->fill(0,0,$white);

# Jetzt die Bilder mischen
$source->copyMerge($destination, 0, 0, 0, 0, $width, $height, $percent);

# Bild speichern
open(OUT, ">", "stifte2.jpg") or die die "Oops: $!\n";
binmode(OUT);
print(OUT $source->jpeg(100));
close(OUT);