Es stand schon laenger auf meiner todo-liste: mir mal
texvc ansehen, das Ocaml programm das Mediawiki benutzt um Formeln mit TeX zu rendern:
rocket emerge ocaml
svn co http://svn.wikimedia.org/svnroot/mediawiki/trunk/phase3/math /usr/local/src/texvc
cd /usr/local/src/texvc && make && cp texvc /usr/local/bin/
Kleine demo applikation mit perl (texvc_inplace.pl):
#!/usr/bin/perl -pi
sub texvc($) { my $tex = shift @_; $tex =~ s/'/'\\''/g;
my $ret = `texvc /tmp texvc_out/ '$tex' iso-8859-1`;
$ret =~ s/&/&/g; $ret =~ s/</</g; $ret =~ s/>/>/g;
$ret =~ /^[\+cmlCMLX](.{32})/; return "src=\"texvc_out/$1.png\""; }
s,<(img[^>]* texvc="([^"]+)")[^>]*>,"<$1 ".texvc($2)."/>",eg;
Rendert PNGs fuer <img texvc="..."/> tags und fuegt die entsprechenden src="..." attribute ein:
$ cat demo.html
This is a little demo formula:<br/>
<img texvc="a+b=c \implies c-a=b"/>
$ mkdir -p texvc_out
$ ./texvc_inplace.pl demo.html
$ cat demo.html
This is a little demo formula:<br/>
<img texvc="a+b=c \implies c-a=b" src="texvc_out/35d97fdf5d98c9d5a697b6114cee4c46.png"/>
Nice.