X-Git-Url: http://git.shiar.nl/sheet.git/blobdiff_plain/3febe16dc279b2160d565b015f7ea97814f40f19..13f64783b1e5ed763a85912e7129d58791de8340:/font.plp diff --git a/font.plp b/font.plp index 2d449f0..98fff40 100644 --- a/font.plp +++ b/font.plp @@ -26,17 +26,11 @@ use 5.010; use Shiar_Sheet::FormatChar; my $glyphs = Shiar_Sheet::FormatChar->new; -my %oslist = ( - win => [qw( arial ariuni lucidau verdana times courier )], # microsoft - mac => [qw( helvetica lucida times garamond palatino )], # apple - android => [qw( roboto noto )], # google - oss => [qw( dvsans c2k unifont opensans )], -); -my @ossel = qw( win mac oss android ); -my @fontlist = map { @{ $oslist{$_} } } @ossel; - my $cover = do 'unicode-cover.inc.pl' or die $@ || $!; +my @ossel = @{ $cover->{osdefault} }; +my @fontlist = map { @{ $cover->{os}->{$_} } } @ossel; + my @rows = ( 'block/Latin-1 Supplement', 'block/Latin Extended-A', @@ -75,15 +69,18 @@ for my $group ($ENV{PATH_INFO} || ()) { print ''; print ''; -print "" for map { scalar @{$oslist{$_}} } @ossel; +print "" + for map { scalar @{ $cover->{os}->{$_} } } @ossel; print ''; print ''; print ''; for (@rows) { @@ -92,11 +89,10 @@ for (@rows) { print ''; $name = sprintf '%s', EncodeURI("/chars/$group/$name"), EscapeHTML($name) - if $row->{-count} and $row->{-count} < 1280; + if $row->{count} and $row->{count} < 1280; print '
'; -printf '%s fonts', scalar @{ $oslist{$_} }, $_ for @ossel; +printf '%s fonts', scalar @{ $cover->{os}->{$_} }, $_ + for @ossel; print '
'; -printf '%s', $_ for @fontlist; +printf '%s', $_->{name}, $_->{abbr} + for @{ $cover->{fonts} }[@fontlist]; say '
', $name; - print '', $row->{-count}; - for (@fontlist) { - my $count = $row->{$_}; + print '', $row->{count}; + for my $count (@{ $row->{support} }[@fontlist]) { if (not defined $count) { print '?'; next; @@ -105,12 +101,12 @@ for (@rows) { print '✘'; next; } - if ($count == $row->{-count}) { + if ($count == $row->{count}) { print '✔'; next; } - my $rel = $count / $row->{-count}; + my $rel = $count / $row->{count}; my $class = $rel < .5 ? 2 : $rel < .9 ? 3 : 4; printf '%d%%', "l$class", $rel*100; }