_mathML;
}
/**
* Singleton, return instance of class
*
* @access public
* @return CreateLink
*/
public static function getInstance()
{
if (self::$_instance == NULL) {
self::$_instance = new CreateMath();
}
return self::$_instance;
}
/**
* Getter. Access to mathXML var
*
* @access public
* @return string
*/
public function getMathXML()
{
return $this->_mathML;
}
/**
* Getter. Access to mathXML var
*
* @access public
* @param string $mathML
*/
public function setMathXML($mathML)
{
$this->_mathML = $mathML;
}
/**
* Generate a new MathML eq
*
* @access public
* @param string $arrArgs[0] Math eq
*/
public function createMath()
{
$this->_xml = '';
$arrArgs = func_get_args();
$this->transformMath($arrArgs[0]);
}
/**
* Transform a MathML eq using XSL
*
* @access protected
* @param string $mathML Math eq
*/
protected function transformMath($mathML)
{
$arrDeleteStrsMML = array('', '');
$arrDeleteToStrsMML = array('', '');
$mathML = str_replace($arrDeleteStrsMML, $arrDeleteToStrsMML, $mathML);
$rscXML = new DOMDocument();
$rscXML->loadXML($mathML);
$objXSLTProc = new XSLTProcessor();
$objXSL = new DOMDocument();
$objXSL->load('../xsl/MML2OMML_n.XSL');
$objXSLTProc->importStylesheet($objXSL);
$this->_mathML = $objXSLTProc->transformToXML($rscXML);
$arrOMML = array('',
' xmlns:m="http://schemas.openxmlformats.org/officeDocument/2006/'
. 'math" xmlns:mml="http://www.w3.org/1998/Math/MathML"');
$arrToOMML = array('', '');
$this->_mathML = str_replace($arrOMML, $arrToOMML, $this->_mathML);
}
}