public function testToString() { $srcArray = array(); $srcArray[] = new Zend_Pdf_Element_Boolean(false); $srcArray[] = new Zend_Pdf_Element_Numeric(100.426); $srcArray[] = new Zend_Pdf_Element_Name('MyName'); $srcArray[] = new Zend_Pdf_Element_String('some text'); $arrayObj = new Zend_Pdf_Element_Array($srcArray); $this->assertEquals($arrayObj->toString(), '[false 100.426 /MyName (some text) ]'); }
/** * Set line dashing pattern * * Pattern is an array of floats: array(on_length, off_length, on_length, off_length, ...) * Phase is shift from the beginning of line. * * @param array $pattern * @param array $phase * @return Zend_Pdf_Page */ public function setLineDashingPattern($pattern, $phase = 0) { $this->_addProcSet('PDF'); if ($pattern === Zend_Pdf_Page::LINE_DASHING_SOLID) { $pattern = array(); $phase = 0; } $dashPattern = new Zend_Pdf_Element_Array(); $phaseEleemnt = new Zend_Pdf_Element_Numeric($phase); foreach ($pattern as $dashItem) { $dashElement = new Zend_Pdf_Element_Numeric($dashItem); $dashPattern->items[] = $dashElement; } $this->_contents .= $dashPattern->toString() . ' ' . $phaseEleemnt->toString() . " d\n"; return $this; }
/** * Dump style to a string, which can be directly inserted into content stream * * @return string */ public function instructions() { $instructions = ''; if ($this->_fillColor !== null) { $instructions .= $this->_fillColor->instructions(false); } if ($this->_color !== null) { $instructions .= $this->_color->instructions(true); } if ($this->_lineWidth !== null) { $instructions .= $this->_lineWidth->toString() . " w\n"; } if ($this->_lineDashingPattern !== null) { //$1 'Zend/Pdf/Element/Array.php'; $dashPattern = new Zend_Pdf_Element_Array(); //$1 'Zend/Pdf/Element/Numeric.php'; foreach ($this->_lineDashingPattern as $dashItem) { $dashElement = new Zend_Pdf_Element_Numeric($dashItem); $dashPattern->items[] = $dashElement; } $instructions .= $dashPattern->toString() . ' ' . $this->_lineDashingPhase->toString() . " d\n"; } return $instructions; }