Example #1
0
 public function ods($start, $end)
 {
     $data = $this->gendate($start, $end);
     $ods = new ods();
     $table = new odsTable('table 1');
     $table->setHorizontalSplit(1);
     $table->setVerticalSplit(3);
     // Set coluomn width
     $styleColumn = new odsStyleTableColumn();
     $styleColumn->setColumnWidth("4cm");
     $table->addTableColumn(new odsTableColumn($styleColumn));
     $table->addTableColumn($column = new odsTableColumn($styleColumn = new odsStyleTableColumn()));
     $styleColumn->setColumnWidth("1.5cm");
     $column->setRepeated($data['total_days']);
     // Set Title Style
     $styleTitle1 = new odsStyleTableCell();
     $styleTitle1->setBorder("0.01cm solid #000000");
     $styleTitle1->setFontWeight('bold');
     $styleTitle2 = clone $styleTitle1;
     $styleTitle2->setTextAlign("center");
     // Months style
     $row = new odsTableRow();
     $row->addCell(new odsTableCellString("Months:", $styleTitle1));
     foreach ($data['months'] as $moi) {
         $cell = new odsTableCellString($moi['title'], $styleTitle2);
         $cell->setNumberColumnsSpanned($moi['day']);
         $row->addCell($cell);
     }
     $table->addRow($row);
     $row = new odsTableRow();
     $row->addCell(new odsTableCellString("Weeks :", $styleTitle1));
     foreach ($data['weeks'] as $week) {
         $cell = new odsTableCellString($week['title'], $styleTitle2);
         $cell->setNumberColumnsSpanned($week['day']);
         $row->addCell($cell);
     }
     $table->addRow($row);
     $row = new odsTableRow();
     $row->addCell(new odsTableCellString("Days:", $styleTitle1));
     foreach ($data['days'] as $day) {
         $cell = new odsTableCellString($day['title'], $styleTitle2);
         $cell->setNumberColumnsSpanned($day['day']);
         $row->addCell($cell);
     }
     $table->addRow($row);
     foreach ($data['projects'] as $projet) {
         $row = new odsTableRow();
         $row->addCell(new odsTableCellString($projet['title'], $styleTitle1));
         if ($projet["shift"]) {
             $cell = new odsTableCellEmpty();
             $cell->setNumberColumnsRepeated($projet["shift"]);
             $row->addCell($cell);
         }
         $styleX = clone $styleTitle2;
         $styleX->setBackgroundColor($projet[color]);
         $cell = new odsTableCellString($projet['title'], $styleX);
         $cell->setNumberColumnsSpanned($projet['days']);
         $row->addCell($cell);
         $table->addRow($row);
     }
     $ods->addTable($table);
     $ods->downloadOdsFile("tab.ods");
     exit;
 }
Example #2
0
<?php

// Load library
require_once '../ods.php';
// Create Ods object
$ods = new ods();
$table = new odsTable('Column Width');
// create column width 1cm
$styleColumn = new odsStyleTableColumn();
$styleColumn->setColumnWidth("1cm");
$column1 = new odsTableColumn($styleColumn);
// create column width 7cm
$styleColumn = new odsStyleTableColumn();
$styleColumn->setColumnWidth("7cm");
$column2 = new odsTableColumn($styleColumn);
// add 2 1cm column
$table->addTableColumn($column1);
$table->addTableColumn($column1);
// add 1 7cm column
$table->addTableColumn($column2);
// Create data
$table->addRow($row = new odsTableRow());
$row->addCell(new odsTableCellString("1cm"));
$row->addCell(new odsTableCellString("1cm"));
$row->addCell(new odsTableCellString("7cm ..."));
// Add table to ods
$ods->addTable($table);
// Download the file
$ods->downloadOdsFile("ColumnWidth.ods");