Skip to content

Commit f192573

Browse files
committed
adjust chart writer according to schema
1 parent 39ce62f commit f192573

File tree

2 files changed

+33
-33
lines changed

2 files changed

+33
-33
lines changed

src/PhpPresentation/Writer/PowerPoint2007/PptCharts.php

Lines changed: 32 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -97,15 +97,15 @@ public function writeChart(Chart $chart)
9797
$objWriter->writeAttribute('val', $chart->getView3D()->getRotationX());
9898
$objWriter->endElement();
9999

100+
// c:hPercent
101+
$hPercent = $chart->getView3D()->getHeightPercent();
102+
$objWriter->writeElementIf($hPercent != null, 'c:hPercent', 'val', $hPercent . '%');
103+
100104
// c:rotY
101105
$objWriter->startElement('c:rotY');
102106
$objWriter->writeAttribute('val', $chart->getView3D()->getRotationY());
103107
$objWriter->endElement();
104108

105-
// c:hPercent
106-
$hPercent = $chart->getView3D()->getHeightPercent();
107-
$objWriter->writeElementIf($hPercent != null, 'c:hPercent', 'val', $hPercent);
108-
109109
// c:depthPercent
110110
$objWriter->startElement('c:depthPercent');
111111
$objWriter->writeAttribute('val', $chart->getView3D()->getDepthPercent() . '%');
@@ -2033,34 +2033,6 @@ protected function writeAxis(XMLWriter $objWriter, Chart\Axis $oAxis, $typeAxis,
20332033
$objWriter->endElement();
20342034
}
20352035

2036-
// c:numFmt
2037-
$objWriter->startElement('c:numFmt');
2038-
$objWriter->writeAttribute('formatCode', $oAxis->getFormatCode());
2039-
$objWriter->writeAttribute('sourceLinked', '1');
2040-
$objWriter->endElement();
2041-
2042-
// c:majorTickMark
2043-
$objWriter->startElement('c:majorTickMark');
2044-
$objWriter->writeAttribute('val', $oAxis->getMajorTickMark());
2045-
$objWriter->endElement();
2046-
2047-
// c:minorTickMark
2048-
$objWriter->startElement('c:minorTickMark');
2049-
$objWriter->writeAttribute('val', $oAxis->getMinorTickMark());
2050-
$objWriter->endElement();
2051-
2052-
// c:tickLblPos
2053-
$objWriter->startElement('c:tickLblPos');
2054-
$objWriter->writeAttribute('val', 'nextTo');
2055-
$objWriter->endElement();
2056-
2057-
// c:spPr
2058-
$objWriter->startElement('c:spPr');
2059-
// Outline
2060-
$this->writeOutline($objWriter, $oAxis->getOutline());
2061-
// ##c:spPr
2062-
$objWriter->endElement();
2063-
20642036
if ($oAxis->getTitle() != '') {
20652037
// c:title
20662038
$objWriter->startElement('c:title');
@@ -2143,6 +2115,34 @@ protected function writeAxis(XMLWriter $objWriter, Chart\Axis $oAxis, $typeAxis,
21432115
$objWriter->endElement();
21442116
}
21452117

2118+
// c:numFmt
2119+
$objWriter->startElement('c:numFmt');
2120+
$objWriter->writeAttribute('formatCode', $oAxis->getFormatCode());
2121+
$objWriter->writeAttribute('sourceLinked', '1');
2122+
$objWriter->endElement();
2123+
2124+
// c:majorTickMark
2125+
$objWriter->startElement('c:majorTickMark');
2126+
$objWriter->writeAttribute('val', $oAxis->getMajorTickMark());
2127+
$objWriter->endElement();
2128+
2129+
// c:minorTickMark
2130+
$objWriter->startElement('c:minorTickMark');
2131+
$objWriter->writeAttribute('val', $oAxis->getMinorTickMark());
2132+
$objWriter->endElement();
2133+
2134+
// c:tickLblPos
2135+
$objWriter->startElement('c:tickLblPos');
2136+
$objWriter->writeAttribute('val', 'nextTo');
2137+
$objWriter->endElement();
2138+
2139+
// c:spPr
2140+
$objWriter->startElement('c:spPr');
2141+
// Outline
2142+
$this->writeOutline($objWriter, $oAxis->getOutline());
2143+
// ##c:spPr
2144+
$objWriter->endElement();
2145+
21462146
// c:crossAx
21472147
$objWriter->startElement('c:crossAx');
21482148
$objWriter->writeAttribute('val', $crossAxVal);

tests/PhpPresentation/Tests/Writer/PowerPoint2007/SchemaTest.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,7 @@ public function testSchema(PhpPresentation $presentation)
8585

8686
$error = libxml_get_last_error();
8787
if ($error) {
88-
$this->fail(sprintf("Validation error: %s in file %s on line %s", $error->message, $file, $error->line));
88+
$this->fail(sprintf("Validation error: %s in file %s on line %s\n%s", $error->message, $file, $error->line, $dom->saveXML()));
8989
}
9090
}
9191
}

0 commit comments

Comments
 (0)