/** * @ignore */ protected function obtener_pdf($xml) { /* Hay problemas para procesar en servidores remotos... por tema de recursos, es decir, si queremos que el pdf contenga una imagen, o que llame a otro xsl, etc. Tal vez se podría enviar un tar.gz, un jar, o zip en donde se arme la estructura de directorios necesaria, y se indique en un archivo tipo INF cual es el path al xsl inicial, tipo de transformación, etc. habría que hablarlo... por ahora se procesa el xml con el xsl y se envía el fo */ $xsl = new DOMDocument(); $xsl->loadXML($this->xsl_proyecto); $doc = new DOMDocument(); $doc->loadXML($xml); $xslt = new XSLTProcessor(); $xslt->importStylesheet($xsl); //El servicio fop debe tener una funcion procesar que acepte 2 atributos: // 1. el archivo fo // 2. el tipo de transformación. $cliente = new SoapClient($this->fop); $pdf = $cliente->procesar(array('fo' => $xslt->transformToXML($doc), 'tipo' => 'pdf')); return base64_decode($pdf); }