#!/usr/bin/perl
use Spreadsheet::ParseExcel;
my $excel = $ARGV[0];
use Data::Dumper;


print "processing $excel \n";

open (HTML, '>res.html');

my $parser   = Spreadsheet::ParseExcel->new();
my $workbook = $parser->parse($excel);


for my $worksheet ( $workbook->worksheets() ) {
    my ( $row_min, $row_max ) = $worksheet->row_range();
    my ( $col_min, $col_max ) = $worksheet->col_range();
    my $mareas = $worksheet->get_merged_areas();

foreach my $marea (@$mareas) {
print "Merged area: \n"; 
 print "Start row: ".$marea->[0]."\n";
  print "Start col: ".$marea->[1]."\n";
   print "End row: ".$marea->[2]."\n";
    print "End col: ".$marea->[3]."\n";
}

    
    
print HTML '<table border="1">';    
    for my $row ( $row_min .. $row_max ) {
print HTML '<tr>';
        for my $col ( $col_min .. $col_max ) {

            my $cell = $worksheet->get_cell( $row, $col );
            next unless $cell;
#            print "Row, Col    = ($row, $col)\n";
#            print "Value       = ", $cell->value(),       "\n";

            my $format = $cell->get_format;
 #           $formatex = Dumper($format->{Fill});
#            print $formatex;            

 #           print "pattern: ". $format->{Fill}->[0]  ."\n";
           my $frontc =  $format->{Fill}->[2];
           my $backc =  $format->{Fill}->[1];

print "Frontc: $frontc\n";
print "Backc: $backc\n";


my $hexfront = $parser->ColorIdxToRGB($frontc);
my $hexback = $parser->ColorIdxToRGB($backc);

print "HexFront: $hexfront\n";
print "HexBack: $hexback\n";


print HTML '<td bgcolor="'.$hexback.'">';
print HTML '<font color="'.$hexfront.'">';
print HTML $cell->value();
print HTML '</font>';
            #print "Unformatted = ", $cell->unformatted(), "\n";
  #          print "\n";
            print HTML '</td>'."\n";
        }
print HTML '</tr>'."\n";
    }
print HTML '</table>';
}

