summaryrefslogtreecommitdiff
path: root/script/qr-color.pl
diff options
context:
space:
mode:
Diffstat (limited to 'script/qr-color.pl')
-rw-r--r--script/qr-color.pl26
1 files changed, 18 insertions, 8 deletions
diff --git a/script/qr-color.pl b/script/qr-color.pl
index 134c887..3490126 100644
--- a/script/qr-color.pl
+++ b/script/qr-color.pl
@@ -4,6 +4,8 @@ use strict;
use warnings;
use Text::QRCode;
use GridFiller;
+use GridFiller::Status;
+use GridFiller::Chooser::Smarter;
use GridFiller::Result::Pango;
use feature 'say';
use open ':std',':locale';
@@ -51,20 +53,28 @@ my $qr=Text::QRCode->new(
my $arr=$qr->plot($data);
-my $filler=GridFiller->new({
- words=>\@words,
- grid=> $arr,
-});
-
my $result = GridFiller::Result::Pango->new({
source_grid => $arr,
cell_size => $size,
( $font_descr ? (font_description => $font_descr) : () ),
});
-$filler->result($result);
-$filler->status->mode('longest');
-$filler->status->length($result->length_closure);
+my $status=GridFiller::Status->new({
+ words=>\@words,
+ grid=> $arr,
+ length => $result->length_closure,
+ mode => 'longest',
+});
+
+my $chooser=GridFiller::Chooser::Smarter->new({
+ status => $status,
+});
+
+my $filler=GridFiller->new({
+ status => $status,
+ chooser => $chooser,
+ result => $result,
+});
$filler->fill();