mirror of
https://github.com/Karaka-Management/Resources.git
synced 2026-01-29 04:28:40 +00:00
104 lines
3.0 KiB
PHP
Executable File
104 lines
3.0 KiB
PHP
Executable File
<?php
|
|
|
|
namespace PhpOffice\PhpPresentation\Writer\PowerPoint2007;
|
|
|
|
use PhpOffice\Common\XMLWriter;
|
|
|
|
class DocPropsApp extends AbstractDecoratorWriter
|
|
{
|
|
/**
|
|
* @return \PhpOffice\Common\Adapter\Zip\ZipInterface
|
|
* @throws \Exception
|
|
*/
|
|
public function render()
|
|
{
|
|
// Create XML writer
|
|
$objWriter = new XMLWriter(XMLWriter::STORAGE_MEMORY);
|
|
|
|
// XML header
|
|
$objWriter->startDocument('1.0', 'UTF-8', 'yes');
|
|
|
|
// Properties
|
|
$objWriter->startElement('Properties');
|
|
$objWriter->writeAttribute('xmlns', 'http://schemas.openxmlformats.org/officeDocument/2006/extended-properties');
|
|
$objWriter->writeAttribute('xmlns:vt', 'http://schemas.openxmlformats.org/officeDocument/2006/docPropsVTypes');
|
|
|
|
// Application
|
|
$objWriter->writeElement('Application', 'Microsoft Office PowerPoint');
|
|
|
|
// Slides
|
|
$objWriter->writeElement('Slides', $this->getPresentation()->getSlideCount());
|
|
|
|
// ScaleCrop
|
|
$objWriter->writeElement('ScaleCrop', 'false');
|
|
|
|
// HeadingPairs
|
|
$objWriter->startElement('HeadingPairs');
|
|
|
|
// Vector
|
|
$objWriter->startElement('vt:vector');
|
|
$objWriter->writeAttribute('size', '4');
|
|
$objWriter->writeAttribute('baseType', 'variant');
|
|
|
|
// Variant
|
|
$objWriter->startElement('vt:variant');
|
|
$objWriter->writeElement('vt:lpstr', 'Theme');
|
|
$objWriter->endElement();
|
|
|
|
// Variant
|
|
$objWriter->startElement('vt:variant');
|
|
$objWriter->writeElement('vt:i4', '1');
|
|
$objWriter->endElement();
|
|
|
|
// Variant
|
|
$objWriter->startElement('vt:variant');
|
|
$objWriter->writeElement('vt:lpstr', 'Slide Titles');
|
|
$objWriter->endElement();
|
|
|
|
// Variant
|
|
$objWriter->startElement('vt:variant');
|
|
$objWriter->writeElement('vt:i4', '1');
|
|
$objWriter->endElement();
|
|
|
|
$objWriter->endElement();
|
|
|
|
$objWriter->endElement();
|
|
|
|
// TitlesOfParts
|
|
$objWriter->startElement('TitlesOfParts');
|
|
|
|
// Vector
|
|
$objWriter->startElement('vt:vector');
|
|
$objWriter->writeAttribute('size', '1');
|
|
$objWriter->writeAttribute('baseType', 'lpstr');
|
|
|
|
$objWriter->writeElement('vt:lpstr', 'Office Theme');
|
|
|
|
$objWriter->endElement();
|
|
|
|
$objWriter->endElement();
|
|
|
|
// Company
|
|
$objWriter->writeElement('Company', $this->getPresentation()->getDocumentProperties()->getCompany());
|
|
|
|
// LinksUpToDate
|
|
$objWriter->writeElement('LinksUpToDate', 'false');
|
|
|
|
// SharedDoc
|
|
$objWriter->writeElement('SharedDoc', 'false');
|
|
|
|
// HyperlinksChanged
|
|
$objWriter->writeElement('HyperlinksChanged', 'false');
|
|
|
|
// AppVersion
|
|
$objWriter->writeElement('AppVersion', '12.0000');
|
|
|
|
$objWriter->endElement();
|
|
|
|
$this->oZip->addFromString('docProps/app.xml', $objWriter->getData());
|
|
|
|
// Return
|
|
return $this->oZip;
|
|
}
|
|
}
|