Action TEX
Si vous ne pouvez pas installer ce qu'il faut sur votre serveur pour faire fonctionner les formules TEX (ForumulesMathExemple), une autre solution pourra vous permettre de créer vos formules dans le wiki.
Aide à propos de TEX: http://refcards.com/docs/silvermanj/tex/tex-refcard-letter.pdf
L'action se nomme «tex» et on a à entrer une formule mathématique sous forme TEX dans le critère f.
Exemple: {{tex f="\Delta{y}=y_i+v_{yi}t+\frac{1}{2}at^2"}}
donne:

L'action utilise cet API de Google: https://developers.google.com/chart/infographics/docs/formulas
Code de l'action:
<?php
if (empty($vars['f'])) {echo "Pas de critère f!";}
else {
$txt=$vars['f'];
if ($vars['class']=="") { $laclass="nul";} else {$laclass="attach_".$vars['class'];}
$urlmst = $this->config[url_site];
if (!function_exists("tex"))
{
/**
* Filtre pour générer un QRCode à partir d'un texte
*/
function tex ( $txt, $dim=120 )
{
// S'il existe pas on crée le répertoire qui va accueillir nos QRCodes
if ( !is_dir("cache-tex/" ) )
{
if ( !mkdir ( "cache-tex/", 0775 ) )
{
return "impossible de creer le repertoire" ;
}
}
// l'url du service web de Google qui va bien
$url = 'http://chart.apis.google.com/chart';
// On colle dans un tableau les arguments pour la requète
$args = array( "cht"=>"tx",
"chl"=>rawurldecode(urlencode($txt))
);
// On crée le context pour la requète
$context = stream_context_create( array(
'http' => array(
'method' => 'POST',
'content' => http_build_query($args)
)
)
);
// Ici on va générer un nom et un chemin pour notre fichier final
$hash = md5(serialize($txt));
$fichier = "cache-tex/qrcode-$hash.png";
// Si notre fichier n'existe pas on requète le service et on crée le fichier
if ( !is_file( $fichier ) ){
file_put_contents( $fichier, file_get_contents( $url, false, $context ) );
}
// On retourne un tag image avec la source qui va bien
//return "<img src=\"$fichier\" alt='qrcode' width='$dim' height='$dim' class='middle' />";
return "$fichier";
}
}
$fichier= tex($txt);
echo "<div class='$laclass'>";
echo "<img src=\"".$urlmst."$fichier\" alt='tex' class='middle' />";
echo "</div>";
}
?>

Il n'y a pas de commentaire sur cette page.
[Afficher commentaires/formulaire]

