From 94553931a0e2d4f46978181a05c2e97d3159df92 Mon Sep 17 00:00:00 2001 From: Paul Buetow Date: Wed, 6 Apr 2022 22:31:07 +0100 Subject: works --- slice.raku | 38 +++++++++++++++++++------------------- 1 file changed, 19 insertions(+), 19 deletions(-) diff --git a/slice.raku b/slice.raku index eedd315..ec7fa4f 100755 --- a/slice.raku +++ b/slice.raku @@ -4,34 +4,34 @@ class Image { has Str $!source; has Str $!thumb; has Str $!blur; + has Str $!large; submethod BUILD(IO::Path :$source, Str :$dist-dir) { $!source = $source.path; $!thumb = "$dist-dir/thumb/{$source.basename}"; $!blur = "$dist-dir/blur/{$source.basename}"; + $!large = "$dist-dir/large/{$source.basename}"; } method generate(Int :$thumb-geometry, Str :$bg-blur) { - my @args = 1, 2; - self.convert(@args); - #['-auto-orient', '-geometry']' - #['-auto-orient', '-geometry', $thumb-geometry, $!source, $!thumb]; - - #@args = '-flip', '-geometry', $thumb-geometry/2, '-blur', $bg-blur, - # $!source, $!blur; - # self.generate(:@args); - #my @foo = 1, 2, 3; - #self.generate(@foo); + self.convert: ['-auto-orient', '-geometry', $thumb-geometry, + $!source, $!thumb]; + self.convert: ['-flip', '-geometry', $thumb-geometry/2, + '-blur', $bg-blur, + $!source, $!blur]; + doit 'cp', [$!source, $!large] unless $!large.IO.f; } method convert(@args) { - say @args; - #return if $dest.IO.f; - #say "Generating $dest"; - #my $proc = run 'convert', (@args, $!source, $dest).flat, :out, :err; - #say $proc.out.slurp(:close); - #say $proc.err.slurp(:close); - #} + doit 'convert', @args unless @args[@args.end].IO.e; + } +} + +sub doit(Str $command, @args) { + say "=> {$command} {@args}"; + my $proc = run $command, @args, :out, :err; + #say $proc.out.slurp(:close); + #say $proc.err.slurp(:close); } sub make-mr-proper(:$dist-dir) { @@ -57,8 +57,8 @@ multi MAIN( ensure-directories :$dist-dir; @images.hyper.map({ - my $image = Image.new(source => $_, :$dist-dir); - $image.generate(:$thumb-geometry, :$bg-blur); + my $image = Image.new: source => $_, :$dist-dir; + $image.generate: :$thumb-geometry, :$bg-blur; }); } -- cgit v1.2.3