/** * Get hash code * * @return string Hash code */ public function getHashCode() { $hashConditionals = ''; foreach ($this->conditionalStyles as $conditional) { $hashConditionals .= $conditional->getHashCode(); } return md5($this->fill->getHashCode() . $this->font->getHashCode() . $this->borders->getHashCode() . $this->alignment->getHashCode() . $this->numberFormat->getHashCode() . $hashConditionals . $this->protection->getHashCode() . ($this->quotePrefix ? 't' : 'f') . __CLASS__); }
/** * Get hash code * * @return string Hash code */ public function getHashCode() { $hashConditionals = ''; foreach ($this->_conditionalStyles as $conditional) { $hashConditionals .= $conditional->getHashCode(); } return md5($this->_fill->getHashCode() . $this->_font->getHashCode() . $this->_borders->getHashCode() . $this->_alignment->getHashCode() . $this->_numberFormat->getHashCode() . $hashConditionals . $this->_protection->getHashCode() . __CLASS__); }
/** * Create a new PHPExcel_Style * * @param boolean $isSupervisor */ public function __construct($isSupervisor = false) { // Supervisor? $this->_isSupervisor = $isSupervisor; // Initialise values $this->_conditionalStyles = array(); $this->_font = new PHPExcel_Style_Font($isSupervisor); $this->_fill = new PHPExcel_Style_Fill($isSupervisor); $this->_borders = new PHPExcel_Style_Borders($isSupervisor); $this->_alignment = new PHPExcel_Style_Alignment($isSupervisor); $this->_numberFormat = new PHPExcel_Style_NumberFormat($isSupervisor); $this->_protection = new PHPExcel_Style_Protection($isSupervisor); // bind parent if we are a supervisor if ($isSupervisor) { $this->_font->bindParent($this); $this->_fill->bindParent($this); $this->_borders->bindParent($this); $this->_alignment->bindParent($this); $this->_numberFormat->bindParent($this); $this->_protection->bindParent($this); } }
/** * Create CSS style (PHPExcel_Style_Fill) * * @param PHPExcel_Style_Fill $pStyle PHPExcel_Style_Fill * @return array */ private function _createCSSStyleFill(PHPExcel_Style_Fill $pStyle) { // Construct HTML $css = array(); // Create CSS $value = $pStyle->getFillType() == PHPExcel_Style_Fill::FILL_NONE ? 'white' : '#' . $pStyle->getStartColor()->getRGB(); $css['background-color'] = $value; // Return return $css; }
/** * Get an array of all fills * * @param PHPExcel $pPHPExcel * @return PHPExcel_Style_Fill[] All fills in PHPExcel * @throws Exception */ public function allFills(PHPExcel $pPHPExcel = null) { // Get an array of unique fills $aFills = array(); // Two first fills are predefined $fill0 = new PHPExcel_Style_Fill(); $fill0->setFillType(PHPExcel_Style_Fill::FILL_NONE); $aFills[] = $fill0; $fill1 = new PHPExcel_Style_Fill(); $fill1->setFillType(PHPExcel_Style_Fill::FILL_PATTERN_GRAY125); $aFills[] = $fill1; // The remaining fills $aStyles = $this->allStyles($pPHPExcel); foreach ($aStyles as $style) { if (!array_key_exists($style->getFill()->getHashCode(), $aFills)) { $aFills[$style->getFill()->getHashCode()] = $style->getFill(); } } return $aFills; }
/** * Get Fill * * @return PHPExcel_Style_Fill */ public function getFill() { if (isset($this->_fill)) { return $this->_fill; } $property = new PHPExcel_Style_Fill(); $property->propertyPrepareBind($this, "_fill"); return $property; }
/** * Write Pattern Fill * * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer * @param PHPExcel_Style_Fill $pFill Fill style * @throws Exception */ private function _writePatternFill(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Style_Fill $pFill = null) { // fill $objWriter->startElement('fill'); // patternFill $objWriter->startElement('patternFill'); $objWriter->writeAttribute('patternType', $pFill->getFillType()); // fgColor $objWriter->startElement('fgColor'); $objWriter->writeAttribute('rgb', $pFill->getStartColor()->getARGB()); $objWriter->endElement(); // bgColor $objWriter->startElement('bgColor'); $objWriter->writeAttribute('rgb', $pFill->getEndColor()->getARGB()); $objWriter->endElement(); $objWriter->endElement(); $objWriter->endElement(); }
/** * Create CSS style (PHPExcel_Style_Fill) * * @param PHPExcel_Style_Fill $pStyle PHPExcel_Style_Fill * @return string */ private function _createCSSStyleFill(PHPExcel_Style_Fill $pStyle) { // Construct HTML $html = ''; // Create CSS $html .= ' background-color: ' . '#' . $pStyle->getStartColor()->getRGB() . ';' . "\r\n"; // Return return $html; }
/** * Write Pattern Fill * * @param PHPExcel_Shared_XMLWriter $objWriter XML Writer * @param PHPExcel_Style_Fill $pFill Fill style * @throws Exception */ private function _writePatternFill(PHPExcel_Shared_XMLWriter $objWriter = null, PHPExcel_Style_Fill $pFill = null) { // fill $objWriter->startElement('fill'); // patternFill $objWriter->startElement('patternFill'); $objWriter->writeAttribute('patternType', $pFill->getFillType()); // If no fill is selected, there is no need for color information if ($pFill->getFillType() != 'none') { // fgColor $objWriter->startElement('fgColor'); $objWriter->writeAttribute('rgb', $pFill->getStartColor()->getARGB()); $objWriter->endElement(); // bgColor $objWriter->startElement('bgColor'); $objWriter->writeAttribute('rgb', $pFill->getEndColor()->getARGB()); $objWriter->endElement(); } $objWriter->endElement(); $objWriter->endElement(); }