our $ptscale= 72/25.4 / $scale;
+sub largescale_text_reduce ($) {
+ my ($maxmag) = @_;
+ # for maxmag=2
+ # scale 7: abs size 1 rel size 1 = 1
+ # scale 2: abs size 2 rel size 2*1/7 = 1 = 2/$scale
+ # scale 1: abs size 2 rel size 2*1/7 = 2/7 = 2/$scale
+ $scale < $maxmag ? ($maxmag * $scale / 7.0)." dup scale" : '';
+}
+
our $psu_ulen= 4.5;
our $psu_edgelw= 0.5;
our $psu_ticklw= 0.1;
o_gsave_transform($pt);
ol(" lf setfont ".set_black('D')."\n".
" 0 $off moveto\n".
+ " ".largescale_text_reduce(4)."\n".
" ($len) show\n".
" grestore\n");
}
" $lmu_marklw setlinewidth stroke\n");
}
if ($draw =~ m/L/) {
- ol(" ".set_black('L')."\n");
+ ol(" ".set_black('L')."\n".
+ " ".largescale_text_reduce(2)."\n");
ol(" /s ($id) def\n".
" lf setfont\n".
" /sx5 s stringwidth pop\n".