diff --git a/src/PhpWord/Style/Chart.php b/src/PhpWord/Style/Chart.php
index 5b02e636..5c96afd2 100644
--- a/src/PhpWord/Style/Chart.php
+++ b/src/PhpWord/Style/Chart.php
@@ -51,6 +51,20 @@ class Chart extends AbstractStyle
* @var array
*/
private $colors = array();
+
+ /**
+ * Chart title
+ *
+ * @var string
+ */
+ private $title = null;
+
+ /**
+ * Chart legend visibility
+ *
+ * @var bool
+ */
+ private $showLegend = false;
/**
* A list of display options for data labels
@@ -220,6 +234,50 @@ class Chart extends AbstractStyle
return $this;
}
+
+ /**
+ * Get the chart title
+ *
+ * @return string
+ */
+ public function getTitle()
+ {
+ return $this->title;
+ }
+
+ /**
+ * Set the chart title
+ *
+ * @param string $value
+ */
+ public function setTitle($value = null)
+ {
+ $this->title = $value;
+
+ return $this;
+ }
+
+ /**
+ * Get chart legend visibility
+ *
+ * @return bool
+ */
+ public function getShowLegend()
+ {
+ return $this->showLegend;
+ }
+
+ /**
+ * Set chart legend visibility
+ *
+ * @param bool $value
+ */
+ public function setShowLegend($value = false)
+ {
+ $this->showLegend = $value;
+
+ return $this;
+ }
/*
* Show labels for axis
diff --git a/src/PhpWord/Writer/Word2007/Part/Chart.php b/src/PhpWord/Writer/Word2007/Part/Chart.php
index 5a3ef276..e14a708b 100644
--- a/src/PhpWord/Writer/Word2007/Part/Chart.php
+++ b/src/PhpWord/Writer/Word2007/Part/Chart.php
@@ -105,8 +105,6 @@ class Chart extends AbstractPart
{
$xmlWriter->startElement('c:chart');
- $xmlWriter->writeElementBlock('c:autoTitleDeleted', 'val', 1);
-
$this->writePlotArea($xmlWriter);
$xmlWriter->endElement(); // c:chart
@@ -130,6 +128,36 @@ class Chart extends AbstractPart
$type = $this->element->getType();
$style = $this->element->getStyle();
$this->options = $this->types[$type];
+
+ $title = $style->getTitle();
+ $showLegend = $style->getShowLegend();
+
+ //Chart title
+ if($title){
+ $xmlWriter->startElement('c:title');
+ $xmlWriter->startElement('c:tx');
+ $xmlWriter->startElement('c:rich');
+ $xmlWriter->writeRaw('
+
+
+
+
+ '.$title.'
+
+ ');
+
+ $xmlWriter->endElement(); // c:rich
+ $xmlWriter->endElement(); // c:tx
+ $xmlWriter->endElement(); // c:title
+
+ }else{
+ $xmlWriter->writeElementBlock('c:autoTitleDeleted', 'val', 1);
+ }
+
+ //Chart legend
+ if($showLegend){
+ $xmlWriter->writeRaw('');
+ }
$xmlWriter->startElement('c:plotArea');
$xmlWriter->writeElement('c:layout');