/**
  * Annotation object constructor
  *
  * @throws Zend_Pdf_Exception
  */
 public function __construct(Zend_Pdf_Element $annotationDictionary)
 {
     if ($annotationDictionary->getType() != Zend_Pdf_Element::TYPE_DICTIONARY) {
         require_once 'Zend/Pdf/Exception.php';
         throw new Zend_Pdf_Exception('Annotation dictionary resource has to be a dictionary.');
     }
     if ($annotationDictionary->Subtype === null || $annotationDictionary->Subtype->getType() != Zend_Pdf_Element::TYPE_NAME || !in_array($annotationDictionary->Subtype->value, array(self::SUBTYPE_HIGHLIGHT, self::SUBTYPE_UNDERLINE, self::SUBTYPE_SQUIGGLY, self::SUBTYPE_STRIKEOUT))) {
         require_once 'Zend/Pdf/Exception.php';
         throw new Zend_Pdf_Exception('Subtype => Markup entry is omitted or has wrong value.');
     }
     parent::__construct($annotationDictionary);
 }
Exemple #2
0
 /**
  * Annotation object constructor
  *
  * @throws Zend_Pdf_Exception
  */
 public function __construct(Zend_Pdf_Element $annotationDictionary)
 {
     if ($annotationDictionary->getType() != Zend_Pdf_Element::TYPE_DICTIONARY) {
         require_once PHP_LIBRARY_PATH . 'Zend/Pdf/Exception.php';
         throw new Zend_Pdf_Exception('Annotation dictionary resource has to be a dictionary.');
     }
     if ($annotationDictionary->Subtype === null || $annotationDictionary->Subtype->getType() != Zend_Pdf_Element::TYPE_NAME || $annotationDictionary->Subtype->value != 'FileAttachment') {
         require_once PHP_LIBRARY_PATH . 'Zend/Pdf/Exception.php';
         throw new Zend_Pdf_Exception('Subtype => FileAttachment entry is requires');
     }
     parent::__construct($annotationDictionary);
 }
Exemple #3
0
 /**
  * Annotation object constructor
  *
  * @throws Zend_Pdf_Exception
  */
 public function __construct(Zend_Pdf_Element $annotationDictionary)
 {
     if ($annotationDictionary->getType() != Zend_Pdf_Element::TYPE_DICTIONARY) {
         //$1 'Zend/Pdf/Exception.php';
         throw new Zend_Pdf_Exception('Annotation dictionary resource has to be a dictionary.');
     }
     if ($annotationDictionary->Subtype === null || $annotationDictionary->Subtype->getType() != Zend_Pdf_Element::TYPE_NAME || $annotationDictionary->Subtype->value != 'Link') {
         //$1 'Zend/Pdf/Exception.php';
         throw new Zend_Pdf_Exception('Subtype => Link entry is requires');
     }
     parent::__construct($annotationDictionary);
 }
Exemple #4
0
 /**
  *
  * @param Zend_Pdf_Annotation $annotation
  * @return Zend_Pdf_Page
  */
 public function attachAnnotation(Zend_Pdf_Annotation $annotation)
 {
     $annotationDictionary = $annotation->getResource();
     if (!$annotationDictionary instanceof Zend_Pdf_Element_Object && !$annotationDictionary instanceof Zend_Pdf_Element_Reference) {
         $annotationDictionary = $this->_objFactory->newObject($annotationDictionary);
     }
     if ($this->_pageDictionary->Annots === null) {
         $this->_pageDictionary->touch();
         $this->_pageDictionary->Annots = new Zend_Pdf_Element_Array();
     } else {
         $this->_pageDictionary->Annots->touch();
     }
     $this->_pageDictionary->Annots->items[] = $annotationDictionary;
     $annotationDictionary->touch();
     $annotationDictionary->P = $this->_pageDictionary;
     return $this;
 }