#!/usr/bin/perl
use strict;
my $wsh=16;
my $wsv=9;
my $wsd=sqrt($wsh*$wsh+$wsv*$wsv);
my $fsh=4;
my $fsv=3;
my $fsd=sqrt($fsh*$fsh+$fsv*$fsv);
my (@ws,@fs);
for (my $i=12;$i<=66;$i++) {
my $h = $i*$fsh/$fsd;
my $v = $i*$fsv/$fsd;
$fs[$i-12]=([$i,$h,$v,$h*$v]);
}
for (my $i=15;$i<=80;$i++) {
my $h = $i*$wsh/$wsd;
my $v = $i*$wsv/$wsd;
$ws[$i-15]=([$i,$h,$v,$h*$v]);
}
print("<html>");
print("<style>
table { border: 1px solid black; }
td { font-family: arial,helvetica,sans serif; text-align:center; color: black; padding: 2px 5px;}
td.ha { background-color: black; color: white; }
td.hb { background-color: #AAA; }
td.even { background-color: #CCF; }
td.odd { background-color: #AAD; }
td.leven { background-color: #CCF; text-align: left;}
td.lodd { background-color: #AAD; text-align: left;}
td.reven { background-color: #CCF; text-align: right;}
td.rodd { background-color: #AAD; text-align: right;}
</style>\n");
printf("<table cols=\"4\">\n");
printf("<tr><td class=\"ha\" colspan=\"4\">Vertical Size TV Comparison Guide</td></tr>\n");
printf("<tr><td class=\"ha\" colspan=\"2\">4:3 Aspect Ratio</td><td class=\"ha\" colspan=\"2\">16:9 Aspect Ratio</td></tr>\n");
printf("<tr><td class=\"hb\">Diagonal Size</td><td class=\"hb\">Vertical Size</td><td class=\"hb\">Vertical Size</td><td class=\"hb\">Diagonal Size</td></tr>\n");
my $c = "odd";
for (my $i=1;$i<$#fs; $i++) {
my $rows=0;
my @foo=();
my $min=($fs[$i][2]+$fs[$i - 1][2])/2;
my $max=($fs[$i][2]+$fs[$i + 1][2])/2;
for (my $k=0;$k<=$#ws;$k++) {
if (($ws[$k][2] >= $min) && ($ws[$k][2] < $max)) {
push(@foo,$k);
$rows++;
}
}
printf("<tr><td class=\"l${c}\" %s> %2d in. </td><td class=\"$c\" %s> %2.1f in. </td>",($rows ? "rowspan=$rows" : ""),$fs[$i][0],($rows ? "rowspan=$rows" : ""),$fs[$i][2]);
if ($rows) {
for (my $k=0; $k<=$#foo; $k++) {
if ($k) { printf("<tr>"); }
printf("<td class=\"$c\"> %2.2f in. </td><td class=\"r${c}\"> %2d in. </td></tr>\n",$ws[$foo[$k]][2],$ws[$foo[$k]][0]);
}
} else {
printf("<td class=\"$c\"> </td><td> class=\"$c\" </td></tr>\n");
}
if ($c eq "odd") { $c = "even"; } else { $c = "odd"; }
}
printf("</table>\n");
printf("</html>\n");