use PDF::API2; use PDF::Table ; use Data::Dumper; my $sNewArray =[ ['25', '0.55', 'Yes', 'Yes', 'No'], ['30', '0.66', 'No', 'Yes', 'Yes'], ['50', '1.08','Yes', 'Yes', 'Yes'], ['60', '1.29', 'No', 'No', 'Yes'] ]; my $pdf = PDF::API2->new(); my $page = $pdf->page(); my $pdftable = new PDF::Table; my $cell_props; my $j = 0; foreach my $row ( @{$sNewArray} ) { my $k = 0; foreach my $cell ( @{$row} ) { if ( $cell eq 'Yes') { $cell_props->[$j]->[$k] ={ background_color => '#808080', font_color => '#808080', }; } elsif ( $cell eq 'No') { $cell_props->[$j]->[$k] ={ background_color => '#F5F5F5', font_color => '#F5F5F5', }; } else { $cell_props->[$j]->[$k] = { background_color => '#F5F5F5', font_color => 'black', }; } $k++; } $j++; } print Dumper $cell_props; $pdftable->table( # required params $pdf, $page, $sNewArray, x => 120, w => 325, start_y => 640, next_y => 640, start_h => 300, next_h => 300, border => 1.0, # some optional params padding => 5, padding_right => 10, font_size => 6, background_color_odd => '#E0E0E0', background_color_even => '#F0F0F0', column_props => [{ justify => 'center' }, { justify => 'center' }, { justify => 'center' }, { justify => 'center' }, { justify => 'center' } ], cell_props => $cell_props, ); $pdf->saveas('C://Perl//scripts//new2.pdf');