Changeset 191

Show
Ignore:
Timestamp:
02/01/07 18:00:23 (2 years ago)
Author:
mikey
Message:

added net.stubbles.xml.xsl.util.stubXSLImageDimensions

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/experiments/general/xsl/transform.php

    r189 r191  
    22require_once '../../../config/php/config.php'; 
    33require_once '../../../src/main/php/net/stubbles/stubClassLoader.php'; 
    4 stubClassLoader::load('net.stubbles.xml.stubDomXMLStreamWriter'); 
    5 class ImageCallback extends stubBaseObject 
    6 { 
    7     /** 
    8      * @XSLMethod 
    9      */ 
    10     public function getImageDimensions($imageFile) 
    11     { 
    12         if (file_exists($imageFile[0]->value) == false) { 
    13             throw new stubException('Image ' . $imageFile[0]->value . ' does not exist.'); 
    14         } 
    15          
    16         $image = getimagesize($imageFile[0]->value); 
    17         if (false === $image) { 
    18             throw new stubException('Image ' . $imageFile[0]->value . ' seems not to be an image, can not retrieve dimension data.'); 
    19         } 
    20          
    21         $xmlStreamWriter = new stubDOMXMLStreamWriter(); 
    22         $xmlStreamWriter->writeStartElement('dimensions'); 
    23         $xmlStreamWriter->writeElement('width', array(), $image[0]); 
    24         $xmlStreamWriter->writeElement('height', array(), $image[1]); 
    25         $xmlStreamWriter->writeEndElement(); 
    26         return $xmlStreamWriter->asDom(); 
    27     } 
    28 } 
    294require_once 'Console/Getargs.php'; 
    305 
     
    9469    $xslProcessor->setParameter('', 'page', $args->getValue('page')); 
    9570} 
    96 $xslProcessor->registerCallback('image', new ImageCallback()); 
     71stubClassLoader::load('net.stubbles.xml.stubDomXMLStreamWriter'); 
     72stubClassLoader::load('net.stubbles.xml.xsl.util.stubXSLImageDimensions'); 
     73$xslProcessor->registerCallback('image', new stubXSLImageDimensions(new stubDomXMLStreamWriter())); 
    9774   
    9875$resultDoc = $xslProcessor->transformToDoc();