From b5b83b378d3dccb7e6538945eaf5000102a2d658 Mon Sep 17 00:00:00 2001 From: Mischa POSLAWSKY Date: Wed, 12 Apr 2017 22:39:29 +0200 Subject: [PATCH] latin: generic function to display rgb colour svg --- writing-latn.inc.pl | 23 +++++++++++++---------- 1 file changed, 13 insertions(+), 10 deletions(-) diff --git a/writing-latn.inc.pl b/writing-latn.inc.pl index 10b30ce..0d6ecb4 100644 --- a/writing-latn.inc.pl +++ b/writing-latn.inc.pl @@ -49,6 +49,18 @@ sub dispbar { ); } +sub disprgb { + my ($index) = @_; + my $circle = ''; + return sprintf( + '%s', + join '', + sprintf($circle, 10, 10, [0, 8, 15]->[$index % 3], 0, 0), + sprintf($circle, 11, 12, 0, [0, 8, 15]->[$index / 3 % 3], 0), + sprintf($circle, 12, 10, 0, 0, [0, 8, 15]->[$index / 9]), + ); +} + ( uppercase => { list => [qw{ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z }], @@ -454,16 +466,7 @@ rgbmap => { 'svg { isolation: isolate }', 'svg circle { mix-blend-mode: screen }', ], - list => [ - map { ''.$_.'' } - map { - my $circle = ''; - join '', - sprintf($circle, 0, 0, [0, 8, 15]->[$_ % 3], 0, 0), - sprintf($circle, 8, 0, 0, [0, 8, 15]->[$_ / 3 % 3], 0), - sprintf($circle, 6, 8, 0, 0, [0, 8, 15]->[$_ / 9]), - } 1 .. 3*3*3 - ], + list => [ map { disprgb($_) } 0 .. 3*3*3 ], }, dni => { title => "D'ni", -- 2.30.0