Thread [Image-Magick] Farbtiefe (2 answers)
Opened by Kean at 2013-01-16 16:42

Kean
 2013-01-16 16:42
#164984 #164984
User since
2004-08-18
463 Artikel
BenutzerIn

user image
Ich habe ein Programm in welchem ich ein Image-Magick Objekt erstelle:

Code: (dl )
1
2
3
my $image = Image::Magick->new(depth=>32);
$image->Set(size=>'1014x636');
$image->ReadImage('xc:white');


Dann lade ich noch zwei weitere Grafiken aus einer Datenbank:
Code: (dl )
1
2
3
4
5
6
7
my $blob = $$ref2{'Bild'};
my $new_image = Image::Magick->new(depth=>32);
$new_image->BlobToImage($blob);
print $new_image->Get('depth')."\n";
my ($image_width, $image_height) = $new_image->Get('width', 'height');
$new_image->Scale(width=>($image_width*($$ref{'Zoom'}/100)), height=>($image_height*($$ref{'Zoom'}/100)));
$image->Composite(image=>$new_image, x=>$$ref{'X'}, y=>$$ref{'Y'}, zoom=>$$ref{'Zoom'}, depth=>32);

Und füge diese mit Composite zusammen.

Dazu kommen noch ein paar Texte:
Code: (dl )
$image->Annotate(%parameter);


Und am Ende speichere ich dieses Image:
Code: (dl )
1
2
print $image->Get('depth')."\n";
$image->Write($tempfolder.'cardout.png', depth=>'32');


Das ganze funktioniert auch. Das Bild ist erstellt und so wie es sein sollte. Bis auf eine Kleinigkeit. Die Bittiefe ist nicht 32 sondern 64.

Und da ich dieses Bild mit dem Modul Win32::Printer ausdrucken möchte, bekomme ich Probleme, da dieses nur Fotos bis Bittiefe 32 annimmt.

Ich gebe vor dem Write noch einmal die Bittiefe aus und diese ist je nach Bild zwischen 8 und 16. Die ausgegebene Datei hat aber wieder 64bit. Woran könnte das liegen und hat vielleicht jemand eine Idee wie ich die Bittiefe reduzieren kann?

modedit Editiert von GwenDragon: unnötige Tabs aus Code
Last edited: 2013-01-16 16:58:35 +0100 (CET)

View full thread [Image-Magick] Farbtiefe