diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..e58a4ce --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +.DS_Store +vendor/ diff --git a/award.php b/award.php new file mode 100644 index 0000000..daeaca4 --- /dev/null +++ b/award.php @@ -0,0 +1,155 @@ +getLayout(); + // $intw = 600;//(int)( ($oLayout->getCX($oLayout::UNIT_PIXEL) * 0.8)); + $inth = 300; // 固定値 (int)($oLayout->getCY($oLayout::UNIT_PIXEL)); + $intoffx = (int)(($oLayout->getCX($oLayout::UNIT_PIXEL) - $intw) / 2); + $intoffy = (int)(($oLayout->getCY($oLayout::UNIT_PIXEL) * $ypercent / 100)); + // echo $oLayout->getCX($oLayout::UNIT_PIXEL) . " " . $intw . " " . $inth . " " . $intoffx . " " . $intoffy . "\n"; + + $shape2 = $slide->createRichTextShape() + ->setWidth($intw) // 794px + ->setHeight($inth) // 1123px + ->setOffsetX($intoffx) + ->setOffsetY($intoffy); + $shape2->getActiveParagraph() + ->getAlignment() + ->setHorizontal($h_alignment) + ->setVertical($v_alignment); + + $textRun2 = $shape2->createTextRun($mes); + + $textRun2->getFont() + ->setName('ヒラギノ明朝 Pro W3') // TODO: Windowsの場合は変更が必要かも + ->setBold(false) + ->setSize($size) + ->setColor(new Color('FF000000')); // 最初のFFは不透明度。そのあとRRGGBB + $shape2->getActiveParagraph()->setLineSpacing(120); // 行間(Line Spacing)。100だとぴったり。150だと1.5倍 + +} + +/** + * $ary['title'] + * $ary['authors] = [ "著者1" , "著者2", ...] + */ +function addHSJ(PhpPresentation $pres, $ary) +{ + $pres->createSlide(); + $pres->setActiveSlideIndex($pres->getSlideCount() - 1); + $slide = $pres->getActiveSlide(); + + addRTShape($pres, $slide, 600, 15, "インタラクション2023", 23); + addRTShape($pres, $slide, 600, 20, "インタラクティブ発表賞(PC推薦)", 26); + + $authors = ""; //著者名 + $aindex = 0; + if (count($ary['authors']) % 2 == 1) { //著者人数が奇数 + $authors .= $ary['authors'][0] . "殿\r\n"; //まず、筆頭著者を書く + $aindex = 1; + } + for ($i = $aindex; $i < count($ary['authors']); $i += 2) { + $authors .= $ary['authors'][$i] . "殿  "; // 残りを2人ずつ書く + $authors .= $ary['authors'][$i + 1] . "殿"; + $authors .= "\r\n"; + } + $additionalline = 0; + if (count($ary["authors"]) > 2) { //著者の行が増えたことを考慮し、本文をすこし下げる + $additionalline = floor((count($ary["authors"]) - 1) / 2); + // echo "additional " . $additionalline . "\n"; + } + addRTShape($pres, $slide, 600, 18.5 + $additionalline * 1.2, $authors, 24, Alignment::HORIZONTAL_CENTER, Alignment::VERTICAL_CENTER); + addRTShape($pres, $slide, 576, 36.5 + $additionalline * 2, "貴殿が本学会シンポジウム インタラクション2023において発表された" . + "「{$ary['title']}」" . + "は本シンポジウムプログラム委員会にて厳正な審査を行った結果新たなインタラクション研究の方向性を示すものであり" . + "今後の情報処理分野の発展に寄与する優秀な発表として認められました\r\nよってここに表彰いたします", 18, Alignment::HORIZONTAL_GENERAL); + + addRTShape($pres, $slide, 520, 67 + $additionalline , "令和5年3月10日\r\n" . + "一般社団法人 情報処理学会\r\n" . + "インタラクション2023\r\n" . + "大会委員長 寺田 努 \r\n" . + "プログラム委員長 竹川 佳成\r\n" . + "インタラクティブ発表委員長 生田 泰章\r\n", 18, Alignment::HORIZONTAL_RIGHT); + + return $slide; //あとで使うことがなければ、必要ない +} + +//新規プレゼンテーション作成 +$phpPres = new PhpPresentation(); +// $phpPres->getLayout()->setDocumentLayout(DocumentLayout::LAYOUT_SCREEN_16X9); +$phpPres->getLayout()->setDocumentLayout(DocumentLayout::LAYOUT_A4, false); //false=portrait +//A4のサイズはEMUで、self::LAYOUT_A4 => ['cx' => 10692000, 'cy' => 7560000], +// $width = Drawing::emuToPixels(DocumentLayout::LAYOUT_A4['cx']); +//ドキュメントのプロパティ設定 +$phpPres->getDocumentProperties() + ->setCreator('@IPSJ') + ->setCompany('一般社団法人情報処理学会') + ->setTitle('インタラクション2023表彰状') + ->setDescription('インタラクション2023表彰状'); + + /////////////////////////////////////////////////////////// + +$ary = [ + "title" => "PHPPresentationを利用した表彰状の作成", + "authors" => ["苗字 名前"], +]; +addHSJ($phpPres, $ary); +array_push($ary["authors"], "苗字 名前"); +addHSJ($phpPres, $ary); +array_push($ary["authors"], "苗字 名前"); +addHSJ($phpPres, $ary); +array_push($ary["authors"], "苗字 名前"); +addHSJ($phpPres, $ary); +array_push($ary["authors"], "苗字 名前"); +addHSJ($phpPres, $ary); +array_push($ary["authors"], "苗字 名前"); +addHSJ($phpPres, $ary); +array_push($ary["authors"], "苗字 名前"); +addHSJ($phpPres, $ary); +array_push($ary["authors"], "苗字 名前"); +addHSJ($phpPres, $ary); + + +$phpPres->removeSlideByIndex(0); // 最初のスライドを削除する + +//マスタースライドに画像を設定 +$oMasterSlide = $phpPres->getAllMasterSlides()[0]; +$oBkgImage = new Image(); +$oBkgImage->setPath('template3.png'); //PDFでもよいが、開く時に、修復が必要になる +$oMasterSlide->setBackground($oBkgImage); + +// 印刷するときはスライドマスターと、コンテンツのあいだに、白い矩形をはさんでおくとよいかもしれない +// $cover = $oMasterSlide->createRichTextShape()->setHeight(1123)->setWidth(794) +// ->setOffsetX(0)->setOffsetY(0); +// $cover->getFill()->setFillType(Fill::FILL_SOLID)->setRotation(45)->setStartColor(new Color('FFffffff'))->setEndColor(new Color('FFffffff')); + +$oWriterPPTX = IOFactory::createWriter($phpPres, 'PowerPoint2007'); +$oWriterPPTX->save(__DIR__ . "/output表彰状.pptx"); +// $oWriterODP = IOFactory::createWriter($phpPres, 'ODPresentation'); +// $oWriterODP->save(__DIR__ . "/sample.odp"); diff --git a/composer.json b/composer.json new file mode 100644 index 0000000..eed59e9 --- /dev/null +++ b/composer.json @@ -0,0 +1,6 @@ +{ + "require": { + "phpoffice/phppresentation": "dev-master" + } +} + diff --git a/composer.lock b/composer.lock new file mode 100644 index 0000000..a081f52 --- /dev/null +++ b/composer.lock @@ -0,0 +1,812 @@ +{ + "_readme": [ + "This file locks the dependencies of your project to a known state", + "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", + "This file is @generated automatically" + ], + "content-hash": "22ea75f4f54875d5b5714a144a132699", + "packages": [ + { + "name": "ezyang/htmlpurifier", + "version": "v4.16.0", + "source": { + "type": "git", + "url": "https://github.com/ezyang/htmlpurifier.git", + "reference": "523407fb06eb9e5f3d59889b3978d5bfe94299c8" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/ezyang/htmlpurifier/zipball/523407fb06eb9e5f3d59889b3978d5bfe94299c8", + "reference": "523407fb06eb9e5f3d59889b3978d5bfe94299c8", + "shasum": "" + }, + "require": { + "php": "~5.6.0 || ~7.0.0 || ~7.1.0 || ~7.2.0 || ~7.3.0 || ~7.4.0 || ~8.0.0 || ~8.1.0 || ~8.2.0" + }, + "require-dev": { + "cerdic/css-tidy": "^1.7 || ^2.0", + "simpletest/simpletest": "dev-master" + }, + "suggest": { + "cerdic/css-tidy": "If you want to use the filter 'Filter.ExtractStyleBlocks'.", + "ext-bcmath": "Used for unit conversion and imagecrash protection", + "ext-iconv": "Converts text to and from non-UTF-8 encodings", + "ext-tidy": "Used for pretty-printing HTML" + }, + "type": "library", + "autoload": { + "files": [ + "library/HTMLPurifier.composer.php" + ], + "psr-0": { + "HTMLPurifier": "library/" + }, + "exclude-from-classmap": [ + "/library/HTMLPurifier/Language/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "LGPL-2.1-or-later" + ], + "authors": [ + { + "name": "Edward Z. Yang", + "email": "admin@htmlpurifier.org", + "homepage": "http://ezyang.com" + } + ], + "description": "Standards compliant HTML filter written in PHP", + "homepage": "http://htmlpurifier.org/", + "keywords": [ + "html" + ], + "support": { + "issues": "https://github.com/ezyang/htmlpurifier/issues", + "source": "https://github.com/ezyang/htmlpurifier/tree/v4.16.0" + }, + "time": "2022-09-18T07:06:19+00:00" + }, + { + "name": "maennchen/zipstream-php", + "version": "v2.4.0", + "source": { + "type": "git", + "url": "https://github.com/maennchen/ZipStream-PHP.git", + "reference": "3fa72e4c71a43f9e9118752a5c90e476a8dc9eb3" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/maennchen/ZipStream-PHP/zipball/3fa72e4c71a43f9e9118752a5c90e476a8dc9eb3", + "reference": "3fa72e4c71a43f9e9118752a5c90e476a8dc9eb3", + "shasum": "" + }, + "require": { + "ext-mbstring": "*", + "myclabs/php-enum": "^1.5", + "php": "^8.0", + "psr/http-message": "^1.0" + }, + "require-dev": { + "ext-zip": "*", + "friendsofphp/php-cs-fixer": "^3.9", + "guzzlehttp/guzzle": "^6.5.3 || ^7.2.0", + "mikey179/vfsstream": "^1.6", + "php-coveralls/php-coveralls": "^2.4", + "phpunit/phpunit": "^8.5.8 || ^9.4.2", + "vimeo/psalm": "^5.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "ZipStream\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Paul Duncan", + "email": "pabs@pablotron.org" + }, + { + "name": "Jonatan Männchen", + "email": "jonatan@maennchen.ch" + }, + { + "name": "Jesse Donat", + "email": "donatj@gmail.com" + }, + { + "name": "András Kolesár", + "email": "kolesar@kolesar.hu" + } + ], + "description": "ZipStream is a library for dynamically streaming dynamic zip files from PHP without writing to the disk at all on the server.", + "keywords": [ + "stream", + "zip" + ], + "support": { + "issues": "https://github.com/maennchen/ZipStream-PHP/issues", + "source": "https://github.com/maennchen/ZipStream-PHP/tree/v2.4.0" + }, + "funding": [ + { + "url": "https://github.com/maennchen", + "type": "github" + }, + { + "url": "https://opencollective.com/zipstream", + "type": "open_collective" + } + ], + "time": "2022-12-08T12:29:14+00:00" + }, + { + "name": "markbaker/complex", + "version": "3.0.2", + "source": { + "type": "git", + "url": "https://github.com/MarkBaker/PHPComplex.git", + "reference": "95c56caa1cf5c766ad6d65b6344b807c1e8405b9" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/MarkBaker/PHPComplex/zipball/95c56caa1cf5c766ad6d65b6344b807c1e8405b9", + "reference": "95c56caa1cf5c766ad6d65b6344b807c1e8405b9", + "shasum": "" + }, + "require": { + "php": "^7.2 || ^8.0" + }, + "require-dev": { + "dealerdirect/phpcodesniffer-composer-installer": "dev-master", + "phpcompatibility/php-compatibility": "^9.3", + "phpunit/phpunit": "^7.0 || ^8.0 || ^9.0", + "squizlabs/php_codesniffer": "^3.7" + }, + "type": "library", + "autoload": { + "psr-4": { + "Complex\\": "classes/src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Mark Baker", + "email": "mark@lange.demon.co.uk" + } + ], + "description": "PHP Class for working with complex numbers", + "homepage": "https://github.com/MarkBaker/PHPComplex", + "keywords": [ + "complex", + "mathematics" + ], + "support": { + "issues": "https://github.com/MarkBaker/PHPComplex/issues", + "source": "https://github.com/MarkBaker/PHPComplex/tree/3.0.2" + }, + "time": "2022-12-06T16:21:08+00:00" + }, + { + "name": "markbaker/matrix", + "version": "3.0.1", + "source": { + "type": "git", + "url": "https://github.com/MarkBaker/PHPMatrix.git", + "reference": "728434227fe21be27ff6d86621a1b13107a2562c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/MarkBaker/PHPMatrix/zipball/728434227fe21be27ff6d86621a1b13107a2562c", + "reference": "728434227fe21be27ff6d86621a1b13107a2562c", + "shasum": "" + }, + "require": { + "php": "^7.1 || ^8.0" + }, + "require-dev": { + "dealerdirect/phpcodesniffer-composer-installer": "dev-master", + "phpcompatibility/php-compatibility": "^9.3", + "phpdocumentor/phpdocumentor": "2.*", + "phploc/phploc": "^4.0", + "phpmd/phpmd": "2.*", + "phpunit/phpunit": "^7.0 || ^8.0 || ^9.0", + "sebastian/phpcpd": "^4.0", + "squizlabs/php_codesniffer": "^3.7" + }, + "type": "library", + "autoload": { + "psr-4": { + "Matrix\\": "classes/src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Mark Baker", + "email": "mark@demon-angel.eu" + } + ], + "description": "PHP Class for working with matrices", + "homepage": "https://github.com/MarkBaker/PHPMatrix", + "keywords": [ + "mathematics", + "matrix", + "vector" + ], + "support": { + "issues": "https://github.com/MarkBaker/PHPMatrix/issues", + "source": "https://github.com/MarkBaker/PHPMatrix/tree/3.0.1" + }, + "time": "2022-12-02T22:17:43+00:00" + }, + { + "name": "myclabs/php-enum", + "version": "1.8.4", + "source": { + "type": "git", + "url": "https://github.com/myclabs/php-enum.git", + "reference": "a867478eae49c9f59ece437ae7f9506bfaa27483" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/myclabs/php-enum/zipball/a867478eae49c9f59ece437ae7f9506bfaa27483", + "reference": "a867478eae49c9f59ece437ae7f9506bfaa27483", + "shasum": "" + }, + "require": { + "ext-json": "*", + "php": "^7.3 || ^8.0" + }, + "require-dev": { + "phpunit/phpunit": "^9.5", + "squizlabs/php_codesniffer": "1.*", + "vimeo/psalm": "^4.6.2" + }, + "type": "library", + "autoload": { + "psr-4": { + "MyCLabs\\Enum\\": "src/" + }, + "classmap": [ + "stubs/Stringable.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP Enum contributors", + "homepage": "https://github.com/myclabs/php-enum/graphs/contributors" + } + ], + "description": "PHP Enum implementation", + "homepage": "http://github.com/myclabs/php-enum", + "keywords": [ + "enum" + ], + "support": { + "issues": "https://github.com/myclabs/php-enum/issues", + "source": "https://github.com/myclabs/php-enum/tree/1.8.4" + }, + "funding": [ + { + "url": "https://github.com/mnapoli", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/myclabs/php-enum", + "type": "tidelift" + } + ], + "time": "2022-08-04T09:53:51+00:00" + }, + { + "name": "pclzip/pclzip", + "version": "2.8.2", + "source": { + "type": "git", + "url": "https://github.com/ivanlanin/pclzip.git", + "reference": "19dd1de9d3f5fc4d7d70175b4c344dee329f45fd" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/ivanlanin/pclzip/zipball/19dd1de9d3f5fc4d7d70175b4c344dee329f45fd", + "reference": "19dd1de9d3f5fc4d7d70175b4c344dee329f45fd", + "shasum": "" + }, + "type": "library", + "autoload": { + "classmap": [ + "pclzip.lib.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "LGPL-2.1" + ], + "authors": [ + { + "name": "Vincent Blavet" + } + ], + "description": "A PHP library that offers compression and extraction functions for Zip formatted archives", + "homepage": "http://www.phpconcept.net/pclzip", + "keywords": [ + "php", + "zip" + ], + "support": { + "issues": "https://github.com/ivanlanin/pclzip/issues", + "source": "https://github.com/ivanlanin/pclzip/tree/master" + }, + "time": "2014-06-05T11:42:24+00:00" + }, + { + "name": "phpoffice/common", + "version": "1.0.1", + "source": { + "type": "git", + "url": "https://github.com/PHPOffice/Common.git", + "reference": "6b5c03a704013bb79c5bab5319759cee34297903" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/PHPOffice/Common/zipball/6b5c03a704013bb79c5bab5319759cee34297903", + "reference": "6b5c03a704013bb79c5bab5319759cee34297903", + "shasum": "" + }, + "require": { + "pclzip/pclzip": "^2.8", + "php": ">=7.1" + }, + "require-dev": { + "phpmd/phpmd": "2.*", + "phpstan/phpstan": "^0.12.88", + "phpunit/phpunit": ">=7" + }, + "type": "library", + "autoload": { + "psr-4": { + "PhpOffice\\Common\\": "src/Common/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "LGPL-3.0-only" + ], + "authors": [ + { + "name": "Mark Baker" + }, + { + "name": "Franck Lefevre", + "homepage": "http://rootslabs.net" + } + ], + "description": "PHPOffice Common", + "homepage": "http://phpoffice.github.io", + "keywords": [ + "common", + "component", + "office", + "php" + ], + "support": { + "issues": "https://github.com/PHPOffice/Common/issues", + "source": "https://github.com/PHPOffice/Common/tree/1.0.1" + }, + "time": "2022-02-17T16:34:52+00:00" + }, + { + "name": "phpoffice/phppresentation", + "version": "dev-master", + "source": { + "type": "git", + "url": "https://github.com/PHPOffice/PHPPresentation.git", + "reference": "732d029640b78b5010750949629f635ed984ee10" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/PHPOffice/PHPPresentation/zipball/732d029640b78b5010750949629f635ed984ee10", + "reference": "732d029640b78b5010750949629f635ed984ee10", + "shasum": "" + }, + "require": { + "ext-xml": "*", + "ext-zip": "*", + "php": "^7.1|^8.0", + "phpoffice/common": "^1", + "phpoffice/phpspreadsheet": "^1.9.0" + }, + "require-dev": { + "phpmd/phpmd": "2.*", + "phpstan/phpstan": "^0.12.88", + "phpunit/phpunit": ">=7.0" + }, + "suggest": { + "ext-gd": "Required to add images" + }, + "type": "library", + "autoload": { + "psr-4": { + "PhpOffice\\PhpPresentation\\": "src/PhpPresentation/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "LGPL-3.0-only" + ], + "authors": [ + { + "name": "Mark Baker" + }, + { + "name": "Franck Lefevre", + "homepage": "http://rootslabs.net" + }, + { + "name": "Ivan Lanin", + "homepage": "http://ivan.lanin.org" + } + ], + "description": "PHPPresentation - Read, Create and Write Presentations documents in PHP", + "homepage": "http://phpoffice.github.io", + "keywords": [ + "LibreOffice", + "PowerPoint", + "odp", + "php", + "ppt", + "pptx", + "presentations" + ], + "support": { + "issues": "https://github.com/PHPOffice/PHPPresentation/issues", + "source": "https://github.com/PHPOffice/PHPPresentation/tree/master" + }, + "time": "2021-11-25T08:43:20+00:00" + }, + { + "name": "phpoffice/phpspreadsheet", + "version": "1.26.0", + "source": { + "type": "git", + "url": "https://github.com/PHPOffice/PhpSpreadsheet.git", + "reference": "5b6ceea9705b068f993e268e4debc566c2637063" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/PHPOffice/PhpSpreadsheet/zipball/5b6ceea9705b068f993e268e4debc566c2637063", + "reference": "5b6ceea9705b068f993e268e4debc566c2637063", + "shasum": "" + }, + "require": { + "ext-ctype": "*", + "ext-dom": "*", + "ext-fileinfo": "*", + "ext-gd": "*", + "ext-iconv": "*", + "ext-libxml": "*", + "ext-mbstring": "*", + "ext-simplexml": "*", + "ext-xml": "*", + "ext-xmlreader": "*", + "ext-xmlwriter": "*", + "ext-zip": "*", + "ext-zlib": "*", + "ezyang/htmlpurifier": "^4.15", + "maennchen/zipstream-php": "^2.1", + "markbaker/complex": "^3.0", + "markbaker/matrix": "^3.0", + "php": "^7.4 || ^8.0", + "psr/http-client": "^1.0", + "psr/http-factory": "^1.0", + "psr/simple-cache": "^1.0 || ^2.0 || ^3.0" + }, + "require-dev": { + "dealerdirect/phpcodesniffer-composer-installer": "dev-master", + "dompdf/dompdf": "^1.0 || ^2.0", + "friendsofphp/php-cs-fixer": "^3.2", + "mitoteam/jpgraph": "^10.2.4", + "mpdf/mpdf": "^8.1.1", + "phpcompatibility/php-compatibility": "^9.3", + "phpstan/phpstan": "^1.1", + "phpstan/phpstan-phpunit": "^1.0", + "phpunit/phpunit": "^8.5 || ^9.0", + "squizlabs/php_codesniffer": "^3.7", + "tecnickcom/tcpdf": "^6.5" + }, + "suggest": { + "dompdf/dompdf": "Option for rendering PDF with PDF Writer", + "ext-intl": "PHP Internationalization Functions", + "mitoteam/jpgraph": "Option for rendering charts, or including charts with PDF or HTML Writers", + "mpdf/mpdf": "Option for rendering PDF with PDF Writer", + "tecnickcom/tcpdf": "Option for rendering PDF with PDF Writer" + }, + "type": "library", + "autoload": { + "psr-4": { + "PhpOffice\\PhpSpreadsheet\\": "src/PhpSpreadsheet" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Maarten Balliauw", + "homepage": "https://blog.maartenballiauw.be" + }, + { + "name": "Mark Baker", + "homepage": "https://markbakeruk.net" + }, + { + "name": "Franck Lefevre", + "homepage": "https://rootslabs.net" + }, + { + "name": "Erik Tilt" + }, + { + "name": "Adrien Crivelli" + } + ], + "description": "PHPSpreadsheet - Read, Create and Write Spreadsheet documents in PHP - Spreadsheet engine", + "homepage": "https://github.com/PHPOffice/PhpSpreadsheet", + "keywords": [ + "OpenXML", + "excel", + "gnumeric", + "ods", + "php", + "spreadsheet", + "xls", + "xlsx" + ], + "support": { + "issues": "https://github.com/PHPOffice/PhpSpreadsheet/issues", + "source": "https://github.com/PHPOffice/PhpSpreadsheet/tree/1.26.0" + }, + "time": "2022-12-21T12:22:06+00:00" + }, + { + "name": "psr/http-client", + "version": "1.0.1", + "source": { + "type": "git", + "url": "https://github.com/php-fig/http-client.git", + "reference": "2dfb5f6c5eff0e91e20e913f8c5452ed95b86621" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/http-client/zipball/2dfb5f6c5eff0e91e20e913f8c5452ed95b86621", + "reference": "2dfb5f6c5eff0e91e20e913f8c5452ed95b86621", + "shasum": "" + }, + "require": { + "php": "^7.0 || ^8.0", + "psr/http-message": "^1.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\Http\\Client\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "http://www.php-fig.org/" + } + ], + "description": "Common interface for HTTP clients", + "homepage": "https://github.com/php-fig/http-client", + "keywords": [ + "http", + "http-client", + "psr", + "psr-18" + ], + "support": { + "source": "https://github.com/php-fig/http-client/tree/master" + }, + "time": "2020-06-29T06:28:15+00:00" + }, + { + "name": "psr/http-factory", + "version": "1.0.1", + "source": { + "type": "git", + "url": "https://github.com/php-fig/http-factory.git", + "reference": "12ac7fcd07e5b077433f5f2bee95b3a771bf61be" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/http-factory/zipball/12ac7fcd07e5b077433f5f2bee95b3a771bf61be", + "reference": "12ac7fcd07e5b077433f5f2bee95b3a771bf61be", + "shasum": "" + }, + "require": { + "php": ">=7.0.0", + "psr/http-message": "^1.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\Http\\Message\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "http://www.php-fig.org/" + } + ], + "description": "Common interfaces for PSR-7 HTTP message factories", + "keywords": [ + "factory", + "http", + "message", + "psr", + "psr-17", + "psr-7", + "request", + "response" + ], + "support": { + "source": "https://github.com/php-fig/http-factory/tree/master" + }, + "time": "2019-04-30T12:38:16+00:00" + }, + { + "name": "psr/http-message", + "version": "1.0.1", + "source": { + "type": "git", + "url": "https://github.com/php-fig/http-message.git", + "reference": "f6561bf28d520154e4b0ec72be95418abe6d9363" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/http-message/zipball/f6561bf28d520154e4b0ec72be95418abe6d9363", + "reference": "f6561bf28d520154e4b0ec72be95418abe6d9363", + "shasum": "" + }, + "require": { + "php": ">=5.3.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\Http\\Message\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "http://www.php-fig.org/" + } + ], + "description": "Common interface for HTTP messages", + "homepage": "https://github.com/php-fig/http-message", + "keywords": [ + "http", + "http-message", + "psr", + "psr-7", + "request", + "response" + ], + "support": { + "source": "https://github.com/php-fig/http-message/tree/master" + }, + "time": "2016-08-06T14:39:51+00:00" + }, + { + "name": "psr/simple-cache", + "version": "3.0.0", + "source": { + "type": "git", + "url": "https://github.com/php-fig/simple-cache.git", + "reference": "764e0b3939f5ca87cb904f570ef9be2d78a07865" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/simple-cache/zipball/764e0b3939f5ca87cb904f570ef9be2d78a07865", + "reference": "764e0b3939f5ca87cb904f570ef9be2d78a07865", + "shasum": "" + }, + "require": { + "php": ">=8.0.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\SimpleCache\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "https://www.php-fig.org/" + } + ], + "description": "Common interfaces for simple caching", + "keywords": [ + "cache", + "caching", + "psr", + "psr-16", + "simple-cache" + ], + "support": { + "source": "https://github.com/php-fig/simple-cache/tree/3.0.0" + }, + "time": "2021-10-29T13:26:27+00:00" + } + ], + "packages-dev": [], + "aliases": [], + "minimum-stability": "stable", + "stability-flags": { + "phpoffice/phppresentation": 20 + }, + "prefer-stable": false, + "prefer-lowest": false, + "platform": [], + "platform-dev": [], + "plugin-api-version": "2.3.0" +} diff --git a/template2.pdf b/template2.pdf new file mode 100644 index 0000000..ad3c0b4 --- /dev/null +++ b/template2.pdf Binary files differ diff --git a/template2.png b/template2.png new file mode 100644 index 0000000..bb06db6 --- /dev/null +++ b/template2.png Binary files differ diff --git a/template3.png b/template3.png new file mode 100644 index 0000000..18977ee --- /dev/null +++ b/template3.png Binary files differ