#!/usr/bin/env perl
-use 5.010;
+use 5.014;
use strict;
use warnings;
select $output;
}
-my %FONTID = (
- 'Times New Roman' => 'times',
- 'DejaVu Sans' => 'dv ss',
- 'DejaVu Serif' => 'dv serif',
- 'DejaVu Sans Mono'=> 'dv mono',
- 'Code2000' => 'c2k',
- 'GNU Unifont' => 'guf',
- 'Droid Sans' => 'droid',
- 'Droid Serif' => 'droid serif',
- 'Droid Sans Mono' => 'droid mono',
-);
-
{
my $ttf = Font::TTF::Font->open($ttfuri)
or die "Cannot open truetype in $ttfuri: $!";
my %meta = (
source => $ttfuri =~ m{(^/usr/.+ | [^/]+) \z}msx,
name => $ttfmeta->find_name(4) || $ttfname,
- revision => $ttf->{head}->{fontRevision},
- version => scalar $ttfmeta->find_name(5),
+ revision => sprintf('%g', $ttf->{head}->{fontRevision}),
+ version => $ttfmeta->find_name(5) =~ s/\Aversion //ri =~ s/\s+\z//r,
copyright=> scalar $ttfmeta->find_name(0),
license => $ttfmeta->find_name(14) || undef,
date => (map {
}
} $ttf->{head}->getdate),
);
- $meta{id} = $FONTID{ $meta{name} } // lc $ttfname;
+ $meta{abbr} = lc join '', $meta{name} =~ s/ MS$//r =~ m{
+ (?!Sans) (?<! [0-9]) ([[:upper:]0-9])
+ }gx;
+
say "# automatically generated by $0";
say '+', pp(\%meta), ',';