|
| 1 | +<?php |
| 2 | + |
| 3 | +// Create new Spreadsheet object |
| 4 | +use PhpOffice\PhpSpreadsheet\Helper\Dimension; |
| 5 | +use PhpOffice\PhpSpreadsheet\Spreadsheet; |
| 6 | +use PhpOffice\PhpSpreadsheet\Worksheet\Drawing; |
| 7 | + |
| 8 | +require __DIR__ . '/../Header.php'; |
| 9 | + |
| 10 | +$helper->log('Create new Spreadsheet object'); |
| 11 | +$spreadsheet = new Spreadsheet(); |
| 12 | +$sheet = $spreadsheet->getActiveSheet(); |
| 13 | +$sheet->getCell('A1')->setValue('twocell'); |
| 14 | +$sheet->getCell('A2')->setValue('twocell'); |
| 15 | +$sheet->getCell('A3')->setValue('onecell'); |
| 16 | +$sheet->getCell('A6')->setValue('absolute'); |
| 17 | + |
| 18 | +// Add a drawing to the worksheet |
| 19 | +$helper->log('Add a drawing to the worksheet two-cell anchor not resized'); |
| 20 | +$drawing = new Drawing(); |
| 21 | +$drawing->setName('PhpSpreadsheet'); |
| 22 | +$drawing->setDescription('PhpSpreadsheet'); |
| 23 | +$drawing->setPath(__DIR__ . '/../images/PhpSpreadsheet_logo.png'); |
| 24 | +// anchor type will be two-cell because Coordinates2 is set |
| 25 | +//$drawing->setAnchorType(Drawing::ANCHORTYPE_TWOCELL); |
| 26 | +$drawing->setCoordinates('B1'); |
| 27 | +$drawing->setCoordinates2('B1'); |
| 28 | +$drawing->setOffsetX2($drawing->getImageWidth()); |
| 29 | +$drawing->setOffsetY2($drawing->getImageHeight()); |
| 30 | +$drawing->setWorksheet($spreadsheet->getActiveSheet()); |
| 31 | + |
| 32 | +// Add a drawing to the worksheet |
| 33 | +$helper->log('Add a drawing to the worksheet two-cell anchor resized'); |
| 34 | +$drawing2 = new Drawing(); |
| 35 | +$drawing2->setName('PhpSpreadsheet'); |
| 36 | +$drawing2->setDescription('PhpSpreadsheet'); |
| 37 | +$drawing2->setPath(__DIR__ . '/../images/PhpSpreadsheet_logo.png'); |
| 38 | +// anchor type will be two-cell because Coordinates2 is set |
| 39 | +//$drawing->setAnchorType(Drawing::ANCHORTYPE_TWOCELL); |
| 40 | +$drawing2->setCoordinates('C2'); |
| 41 | +$drawing2->setCoordinates2('C2'); |
| 42 | +$drawing2->setOffsetX2($drawing->getImageWidth()); |
| 43 | +$drawing2->setOffsetY2($drawing->getImageHeight()); |
| 44 | +$drawing2->setWorksheet($spreadsheet->getActiveSheet()); |
| 45 | + |
| 46 | +$spreadsheet->getActiveSheet()->getColumnDimension('C')->setWidth($drawing->getImageWidth(), Dimension::UOM_PIXELS); |
| 47 | +$spreadsheet->getActiveSheet()->getRowDimension(2)->setRowHeight($drawing->getImageHeight(), Dimension::UOM_PIXELS); |
| 48 | + |
| 49 | +// Add a drawing to the worksheet one cell anchor |
| 50 | +$helper->log('Add a drawing to the worksheet one-cell anchor'); |
| 51 | +$drawing3 = new Drawing(); |
| 52 | +$drawing3->setName('PhpSpreadsheet'); |
| 53 | +$drawing3->setDescription('PhpSpreadsheet'); |
| 54 | +$drawing3->setPath(__DIR__ . '/../images/PhpSpreadsheet_logo.png'); |
| 55 | +// anchor type will be one-cell because Coordinates2 is not set |
| 56 | +//$drawing->setAnchorType(Drawing::ANCHORTYPE_ONECELL); |
| 57 | +$drawing3->setCoordinates('D3'); |
| 58 | +$drawing3->setWorksheet($spreadsheet->getActiveSheet()); |
| 59 | + |
| 60 | +// Add a drawing to the worksheet |
| 61 | +$helper->log('Add a drawing to the worksheet two-cell anchor resized absolute'); |
| 62 | +$drawing4 = new Drawing(); |
| 63 | +$drawing4->setName('PhpSpreadsheet'); |
| 64 | +$drawing4->setDescription('PhpSpreadsheet'); |
| 65 | +$drawing4->setPath(__DIR__ . '/../images/PhpSpreadsheet_logo.png'); |
| 66 | +// anchor type will be two-cell because Coordinates2 is set |
| 67 | +//$drawing->setAnchorType(Drawing::ANCHORTYPE_TWOCELL); |
| 68 | +$drawing4->setCoordinates('C6'); |
| 69 | +$drawing4->setCoordinates2('C6'); |
| 70 | +$drawing4->setOffsetX2($drawing->getImageWidth()); |
| 71 | +$drawing4->setOffsetY2($drawing->getImageHeight()); |
| 72 | +$drawing4->setWorksheet($spreadsheet->getActiveSheet()); |
| 73 | +$drawing4->setEditAs(Drawing::EDIT_AS_ABSOLUTE); |
| 74 | + |
| 75 | +//$spreadsheet->getActiveSheet()->getColumnDimension('C')->setWidth($drawing->getImageWidth(), Dimension::UOM_PIXELS); |
| 76 | +$spreadsheet->getActiveSheet()->getRowDimension(6)->setRowHeight($drawing->getImageHeight(), Dimension::UOM_PIXELS); |
| 77 | + |
| 78 | +$helper->write($spreadsheet, __FILE__, ['Xlsx']); |
0 commit comments