|
|
|
@ -7,10 +7,11 @@ $Text::Wrap::columns = 30; |
|
|
|
|
my $cards = LoadFile('shopping.yml'); |
|
|
|
|
$bgcolour = $cards->{Deck}->{Background}; |
|
|
|
|
$mainfont = $cards->{Deck}->{Font}; |
|
|
|
|
$txtcolour = $cards->{Deck}->{TextColour}; |
|
|
|
|
|
|
|
|
|
foreach my $card (keys %{$cards->{Deck}->{Cards}}){ |
|
|
|
|
my $image = Image::Magick->new(size=>'600x825'); |
|
|
|
|
$image->ReadImage('canvas:white'); |
|
|
|
|
$image->ReadImage('canvas:' . $bgcolour); |
|
|
|
|
$image->Draw(stroke=>'red', fill => 'none', strokewidth=>1, primitive=>'rectangle', points=>'38,38 562,787'); |
|
|
|
|
my $surface = Image::Magick->new; |
|
|
|
|
$surface->Rotate(90); |
|
|
|
@ -21,9 +22,9 @@ foreach my $card (keys %{$cards->{Deck}->{Cards}}){ |
|
|
|
|
foreach my $line (@{$cards->{Deck}->{Cards}->{$card}}){ |
|
|
|
|
$text = $text . wrap('', '', $line) . "\n"; |
|
|
|
|
} |
|
|
|
|
$image->Annotate(text => $card, x => 50, y => 100, font => $mainfont, fill => 'black', pointsize => 60); |
|
|
|
|
$image->Annotate(text => $card, x => 50, y => 100, font => $mainfont, fill => $txtcolour, pointsize => 60); |
|
|
|
|
my $newlines = () = $text =~ /(\n)/g; |
|
|
|
|
$image->Annotate(text => $text, x => 50, y => (750-(25*$newlines)), font => $mainfont, fill => 'black', pointsize => 25); |
|
|
|
|
$image->Annotate(text => $text, x => 50, y => (750-(25*$newlines)), font => $mainfont, fill => $txtcolour, pointsize => 25); |
|
|
|
|
$image->Write($card . '.png'); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|