Hi,

On Mon, Aug 10, 2009 at 4:33 PM, Thomas Mortagne
<[email protected]>wrote:

> On Mon, Aug 10, 2009 at 16:14, Sergiu Dumitriu<[email protected]> wrote:
> > Hello Community,
> >
> > I have committed today the first implementation of a new XWiki feature:
> > rendering mathematical equations into images. It is available as a
> > standalone component, and as a syntax 2.0 macro.
> >
> >
> >
> > About the functionality.
> >
> > Equations are written in the TeX/LaTeX syntax, which is pretty simple,
> > and seems to be the syntax of choice for mathematical equations in other
> > wikis, too. The macro can distinguish between inline and block equations
> > and render them accordingly. The output can be either PNG (the default
> > one), GIF or JPEG. While PNG is definitely the best, I kept the other
> > two in case somebody really wants to use ancient browsers that only
> > understand GIF.
> >
> > Q: Should I leave just PNG as the output format?
>

I think keeping PNG as the default format is fine too, most browsers accept
it without complaint.


>
> >
> > Another feature is that the font size can be specified, in order to
> > render larger or smaller equations. All the font size commands from
> > LaTeX (from \tiny to \Huge) have an equivalent. I renamed them to a more
> > easy to understand name (also because the configuration is case
> > insensitive, so there's no difference between large and LARGE).
> >
> > By default images are generated so that the font looks relatively OK
> > with the default XWiki skin on a 72 or 96 DPI display. They might look
> > disproportionate with a different DPI, or with a different default font
> > size.
> >
> > Q: Is the default DPI setting OK?
> >
> >
> >
> > Second, a few technical details:
> >
> > The standalone component is located in
> > platform/core/xwiki-equation-rendering. I don't know if the name is the
>
> I don't like this name either "rendering" is too much linked to the
> rendering module now and this could be used by anyone, not only the
> equation macro.
>
> It's also true that xwiki-equation is not clear enough but you could
> maybe find something else.


xwiki-equation-displayer maybe ?


>
>
> > best (Vincent complained). On one hand, this describes better what the
> > component does: it renders equations. On the other hand, it might cause
> > confusion with the xwiki-rendering system.
> >
> > The component currently has three implementations:
> >
> > - a native one, which relies on the latex system being present. It gives
> > the best results, from a graphical point of view, but requires the
> > presence of external programs, and involves a slight overhead for
> > starting new processes and for working with the disk. Currently it might
> > have some security problems, I'll have to see if opening input and
> > output files from TeX is a problem, or how to disable this. Any help
> > from someone who know more about TeX?
> >
> > Q: Does anybody know of any security issues with running latex, dvips or
> > convert? Especially with the \openin and \openout commands?
> >
> > - one which uses MathTran as a remote service through HTTP requests. It
> > gives results as good as the native one, enhanced with some metadata,
> > and depending on the configuration of the server, it might have better
> > performance than the native one. The disadvantage is that it relies
> > heavily on a remote server. Note that MathTran is free software, and can
> > be installed locally on the same or a neighboring server. Oh, another
> > minor problem is that it uses a variant of the TeX syntax, not LaTeX.
> >
> > - one which uses SnuggleTeX and JEuclid to transform LaTeX into MathML,
> > and then render it into images. The results are not as eye-pleasing as
> > those obtained from LaTeX, but it is a self-contained solution, with no
> > external dependencies.
> >
> > SnuggleTeX uses the liberal 3-clause BSD license, JEuclid uses the
> > Apache v2 license, so both can be deployed. Together, they weight in at
> > 730k, so it's not a big impact. The other two implementations are not
> > contaminated by the licenses of the underlying system, so there's no
> > license conflict.
> >
> > Q: Should either one be removed?
> >
> > Q: Do you know of any other (better) alternative?
> >
> > By default the native renderer is used, since it gives the best results
> > and doesn't depend on an external service. SnuggleTeX is configured as a
> > backup (safe) renderer which kicks in when the default one isn't working
> > (missing tex subsystem, or communication error with the remote server).
> >
> > Q: Is this setup OK as the default one? (native by default, snuggletex
> > as fallback).
> >
> > The generated images are stored in a cache (using the cache component),
> > for improved performance. This new cache might increase the memory
> > requirements, but fortunately it is easy to configure.
> >
> > The rendering macro is located in
> >
> platform/core/xwiki-rendering/xwiki-renderig-macros/xwiki-rendering-macro-equation,
> > and the macro can be used with
> >
> > {{equation}}\sum_{i=0}^{\infty}{{/equation}}.
> >
> > Q: Is the macro name appropriate? Do you know of a better one?
> >
> >
>

I think "equation" is fine.


>
> >
> > Future work:
> > - make sure that there are no security issues with the Native backend
> > - add support for MathML display for the clients that understand it
> > - improve the alignment of images (especially for the Native backend),
> > as right now they are a bit raised above the text baseline
> >
> >
> > Many thanks to Guillaume Legris who provided the starting point for this
> > component.
>

Good work, thanks Guillaume & Sergiu !

Guillaume


>
> > --
> > Sergiu Dumitriu
> > http://purl.org/net/sergiu/
> > _______________________________________________
> > users mailing list
> > [email protected]
> > http://lists.xwiki.org/mailman/listinfo/users
> >
>
>
>
> --
> Thomas Mortagne
> _______________________________________________
> users mailing list
> [email protected]
> http://lists.xwiki.org/mailman/listinfo/users
>



-- 
Guillaume Lerouge
Product Manager - XWiki
Skype: wikibc
Twitter: glerouge
http://guillaumelerouge.com/
_______________________________________________
users mailing list
[email protected]
http://lists.xwiki.org/mailman/listinfo/users

Reply via email to