my ($fontmeta, @cover) = do "ttfsupport/$font.inc.pl";
$fontmeta or die "Unknown font $font\n";
- my $offset = $get{q} || 0;
- $offset < 0 and $offset = 0;
+ require Unicode::UCD;
+
my $size = 0x200;
+ my $offset = eval {
+ local $_ = $get{q} || 0;
+ return $_ if /\A\d+\z/; # numeric
+ return hex $1 if /\A (?: 0?x | u\W* ) ([0-9a-f]+) \z/ix; # hexadecimal
+ return $_->[0]->[0] for Unicode::UCD::charblock(ucfirst) || (); # block
+ die "Unknown offset query '$_'\n";
+ };
+ die $@ if $@;
say "<h1>Font coverage</h1>";
say "<h2>$_</h2>" for EscapeHTML($fontmeta->{name});