summaryrefslogtreecommitdiff
path: root/slice.raku
diff options
context:
space:
mode:
authorPaul Buetow <paul@buetow.org>2022-04-06 22:31:07 +0100
committerPaul Buetow <paul@buetow.org>2022-04-06 22:31:07 +0100
commit94553931a0e2d4f46978181a05c2e97d3159df92 (patch)
treefc09a8708e36ff64c688c1c4776f1747533d18ce /slice.raku
parent9d7768631e9429bd97924db65559b5277180785d (diff)
works
Diffstat (limited to 'slice.raku')
-rwxr-xr-xslice.raku38
1 files 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;
});
}