Overview

Packages

  • PHP
  • vsword
    • node
    • parser
      • addesed
    • structure
      • style

Classes

  • AttachVsWord
  • MyInitNode
  • VsWord

Interfaces

  • IBlockContext
  • IInitNode
  • ILineContext
  • INode
  • INodeStyle
  • INodeStyleAdded
  • INodeTextAdded
  • IPNodeStyle
  • IPNodeStyleAdded
  • Overview
  • Package
  • Class
  • Tree
 1: <?php
 2: /**
 3: * Example of adding their styles to the document handler.
 4: */
 5: 
 6: require_once '../vsword/VsWord.php'; 
 7: VsWord::autoLoad();
 8: 
 9: class MyInitNode implements IInitNode {
10: 
11:     /**
12:     * @param string $tagName
13:     * @param mixed $attributes
14:     * @return Node
15:     */
16:     function initNode($tagName, $attributes) {   
17:         if($tagName == 'p' && isset($attributes['class']) && $attributes['class'] == 'BigText') {
18:                 $p = new PCompositeNode();
19:                 $r = new RCompositeNode();
20:                 $p->addNode($r); 
21:                 $r->addTextStyle(new BoldStyleNode());
22:                 $r->addTextStyle(new FontSizeStyleNode(36));  
23:                 return $p;
24:         }
25:         return NULL;
26:     }
27: }
28: 
29: $doc = new VsWord();  
30: $parser = new HtmlParser($doc);
31: $parser->addHandlerInitNode( new MyInitNode() );
32: 
33: $parser->parse('<p class="BigText">Image 1</p><br/><img  alt="image1" src="img1.jpg"><i>The cat =)</i>');
34: 
35: echo '<pre>'.($doc->getDocument()->getBody()->look()).'</pre>';
36: 
37: $doc->saveAs('htmlparser_yourstyle.docx');
wordx API documentation generated by ApiGen 2.8.0