<name> name from rgb.txt
#<R><G><B> where R G B are each the same number of hex digits
%<ps> literal postscript <ps> eg 0.5 setgray
+ - transparent (for element "l" only)
-q quiet: do not print info to stderr
(default: prints bounding box, at the moment)
$rgbmax= (1 << ($l1 * 4))-1;
} elsif ($spec eq '') {
return '';
+ } elsif ($spec eq '-') {
+ return $spec;
} elsif ($spec =~ m/^\%/) {
return $';
} else {
my @defs= split //, $1;
my $nc= parse_colour($2);
foreach my $def (@defs) {
+ die "cannot specify transparent for $def"
+ if $nc eq '-' && !grep { $_ eq $def } qw(l);
if ($def eq '*') {
$colourmap{$_}=$nc foreach keys %colourmap;
} elsif (exists $colourmap{$def}) {
" sx5 neg 0 moveto\n".
" sx5 neg $lmu_txtboxh lineto\n".
" sx5 $lmu_txtboxh lineto\n".
- " sx5 0 lineto closepath\n".
- " gsave ".set_colour(1, 'l')." fill grestore\n".
- " $lmu_txtboxlw setlinewidth stroke\n".
+ " sx5 0 lineto closepath\n");
+ if ($colourmap{'l'} ne '-') {
+ ol(" gsave ".set_colour(1, 'l')." fill grestore\n");
+ }
+ ol(" $lmu_txtboxlw setlinewidth stroke\n".
" sx5 neg $lmu_txtboxpadx add $lmu_txtboxtxty\n".
" moveto s show\n");
}