※Linux上でしか動作しません。Windowsの場合はなんとかしてください。
LaTeXファイルを直接ファイルに生成して、dviにコンパイルして、pngとして取り出す。
ファイル名は $filename = time()にランダムな文字列を追加したもの(にしよう)。
$template = '
\documentclass[12pt]{article}
\usepackage{amsmath,amsthm,amssymb}
\begin{document}
\pagestyle{empty}
$ I=\int_{0}^{ \frac {1}{2}} \frac{x}{\sqrt{1-x^2}} dx $
\end{document}
';
latexがインストールされていることを確認したうえで、実行演算子 “ (バッククォート) を用いて
$randname = time(); $filename = WWW_ROOT . 'files' . DS . 'pdf' . DS . 'dynamic' . DS . $randname; $filename2 = $filename.'.tex'; //ファイル書き出し file_put_contents($filename2 , $template );
//作業フォルダ指定
$dir = WWW_ROOT . 'files' . DS . 'pdf' . DS . 'dynamic' ;
//シェルコマンド生成
$command = "/usr/bin/platex ".$filename;
//実行(cd でカレント移動しておかないと /webroot で作業をしようとする)
$test = `cd ${dir} ; ${command}`;
pr($test);
//できあがったdviファイルをpngに変換
//シェルコマンド生成
$command = "/usr/bin/dvipng -D 720 -T tight ".$filename;
//実行(cd でカレント移動しておかないと /webroot で作業をしようとする)
$test = `cd ${dir} ; ${command}`;
pr($test);
動的に$template を生成すれば任意の数式のpng画像が生成される。

かっこええ!
生成された画像をpdfに埋め込んでウマー。 かな