Thread [Image::Magick] Rahmen um Text
(12 answers)
Opened by GUIfreund at 2013-10-13 19:01
Hab's jetzt fast fertig. Fehlt nur noch die Zeilenhöhe. Die muss ich mit Query(Multiline)FontMetrics holen. Hier der aktuelle Zustand meines Tests:
Code (perl): (dl
)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 use strict; use warnings; use feature 'say'; use Image::Magick; my $err; # Objekt für Bilder erzeugen my $img = Image::Magick->new(); # Bildgröße setzen $err = $img->Set(size=>'300x200'); die "$err" if "$err"; # Bild mit Farbe erzeugen $err = $img->ReadImage("xc:orange"); die "$err" if "$err"; #my $text = "aaaaaaaaa"; my $text = "aaaaaaaaa\nbbbb\nccccccccccc\nllll"; $err = $img->Annotate(text => $text, x => 40, y => 120, pointsize => 20, # undercolor=>'white', undercolor=>'green', ); die "$err" if "$err"; $img->Trim(); my $w = $img->Get('width'); # ok say "width: $w"; $err = $img->Draw(primitive=>'line', points=>'0,0 0,99', strokewidth => 3, stroke=>'blue', ); die "$err" if "$err"; $err = $img->Draw(primitive=>'line', points=>"$w,0 $w,99", strokewidth => 3, stroke=>'blue', ); die "$err" if "$err"; $err = $img->Write("farbiges_rechteck.gif"); warn "$err" if "$err"; 'hight' kann ich nicht mit Get() holen (liefert "undef"), und 'pointsize' liefert 0 (ist eh unbrauchbar, da kleiner als die Zeilenhöhe). Die Breite wollte (und bekomme) ich möglichst exakt, damit nicht unnötig was vom Foto wegfällt. Edit: Anmerkung: Als ich deine Antwort las, war wieder der riesige Positionsbalken dabei. Scheint gar nicht so selten zu sein. Last edited: 2013-10-14 19:55:04 +0200 (CEST) Gruß
GUIfreund View full thread [Image::Magick] Rahmen um Text |