Dotclear


Version 3 (modified by jcdubacq, 14 years ago) (diff)

Automatic synchronization with the enclosed documentation

English

LaTeXrender

Permet de faire composer du texte par LaTeX.

Auteurs/Contributeurs?

Développement

Bugs et demandes de fonctionnalités

Dépôt

Changements récents

[1711] by kozlika on 10/25/09 10:54:24

latexrender: typo.

[1545] by jcdubacq on 10/03/09 22:23:41

  • Bump version number (oops)

[1541] by jcdubacq on 10/03/09 16:02:39

  • Explain how to type in wiki mode (see #220)
  • Update for DC 2.1.6: delete references in declarations

Documentation

Le plugin LaTeXrender est une extension destinée à permettre à un serveur web hébergeant une installation de Dotclear 2 et une installation de [tex]\LaTeX[/tex] (un traitement de texte dont un des points forts est la représentation des mathématiques et très utilisé pour publier dans le domaine de la recherche scientifique) d'afficher (sous forme d'image) des morceaux de texte composés en [tex]\LaTeX[/tex]. Il est livré avec une zone de réglages pour choisir les chemins ses programmes auxiliaires.

Ce plugin est d'une part une conversion d'une classe déjà existante (la classe latexrender, écrite en PHP pour un tas de supports); d'autre part, j'ai simplifié la classe (un bon nombre de choses sont complètement simplifiables dans le cadre restreint de Dotclear 2) mais aussi amélioré l'algorithme de choix de décalage vertical (lui-même ajouté par Mike Boyle) et introduit une gestion des couleurs (des gens utilisent des fonds sombres, et les équations en noir sur noir ou en noir sur bleu nuit, ce n'est pas très lisible).


La page de maintenance de cette extension est à cette adresse : http://jean-christophe.dubacq.fr/post/latexrender.

Installation

Utilisez le fichier zippé fourni en annexe de ce billet. Ensuite, rendez-vous en zone d'administration en tant que super-administrateur, et remplissez les chemins d'accès aux divers exécutables ([tex]\LaTeX[/tex] et la suite ImageMagick; les valeurs par défauts doivent être suffisantes pour la plupart des installations) ainsi que quelques paramètres supplémentaires (dans le menu Extensions). Les paramètres doivent être évidents ; si ce n'est pas le cas, soumettez un rapport de bug.

source:/plugins/latexrender/doc/latexrender-admin.png

L'extension nécessite une installation sur le serveur de latex et du paquet logiciel ImageMagick (notamment les utilitaires convert et identify). La plupart des fournisseurs d'accès n'installent pas ces utilitaires (latex en particulier, ImageMagick est plus fréquent), mais les plateformes d'hébergement spécifiques doivent pouvoir le fournir sans beaucoup d'efforts (entreprise, laboratoire, particulier auto-hébergé) : ce sont des logiciels extrêmement courants sous Linux.

Il faut pour que cette extension fonctionne utiliser l'extension stacker. Une solution sans cette extension est à l'étude, mais elle sera forcément incompatible avec plusieurs autres extensions qui redéfinissent l'accès au contenu des billets (note: comme l'auteur en utilise plusieurs, il considère ceci comme un bug).

La version courante de cette extension est 0.9 (local svn 333).

Cette extension est sous la licence CC-BY.

Utilisation

Utilisation basique

L'utilisation en est souple, il suffit de taper son texte [tex]\LaTeX[/tex] entre deux pseudos-balises [tex]...[/tex]. Par exemple, [tex]$\displaystyle\int_{0}^{1}\frac{x^{4}\left(1-x\right)^{4}}{1+x^{2}}dx =\frac{22}{7}-\pi$[/tex].

Les équations sont représentées sous forme d'image, et le code [tex]\LaTeX[/tex] est donné comme titre de l'image.

source:/plugins/latexrender/doc/latexrender-exemple.png

Les limitations sur ce qu'on peut taper sont une restriction des instructions autorisées (pas de \special, par exemple), les morceaux de code doivent être composés en mode horizontal (si on veut composer en mode vertical, par exemple des grandes équations, plusieurs paragraphes..., il faut encadrer le tout par un \begin{minipage}{500px}...\end{minipage}). C'est une restriction de [tex]\LaTeX[/tex], pas de l'extension.

Les images sont stockées dans le répertoire public du blog, par défaut dans un sous-répertoire latexrender/images.

Gestion des couleurs

La classe d'origine ne savait pas gérer des couleurs : le texte était toujours rendu en noir (sur fond transparent dans les dernières versions). Certains thèmes sont de couleur sombre, ce qui rendait l'extension inutilisable. Il est possible d'indiquer à LaTeXrender la couleur dominante dans laquelle on veut que les équations soient rendues pour qu'elles apparaissent sur la page. Par exemple, sur cette page, le thème d'origine Grey Silence ne fait aucun traitement spécifique, mais le thème LIPN-hiver était en blanc sur noir.

Si vous choisissez la méthode de génération avec couleur (qui nécessite un ImageMagick plus récent ; ça fonctionne au moins avec ImageMagick 6.2.4 02/10/07 Q16), vous pourrez utiliser cette possibilité ; il suffit d'ajouter dans l'un des fichiers de votre thème (juste avant la fin qui est normalement ?>) l'expression $core->theme_color='FFFFFF';. Cette ligne peut être ajoutée avant la dernière ligne de _public.php ou _prepend.php. Si aucun de ces fichiers n'est présent, un fichier _public.php constitué d'une seule ligne peut être ajouté:

<?php $core->theme_color='FFFFFF'; ?>

FFFFFF est à remplacer par la couleur voulue en hexadécimal (ici, blanc; jaune est FFFF00, rouge est FF0000...).

Pour signaler un bug ou aider cette extension

Le mieux est de me contacter par courrier (pour un bug) ou de laisser un commentaire (pour dire que vous avez testé cette extension). En cas de mise à jour, je modifierai ce billet.

Liste des changements

Note : ce journal est non-exhaustif, généré automatiquement, en anglais, et sans doute non-informatif avant 2009.

  • Local SVN release 333 (jcdubacq,2009-04-18)
    • Allow for public path to be an absolute path, release
  • Local SVN release 303 (jcdubacq,2009-01-27)
    • Fix locales
  • Local SVN release 297 (jcdubacq,2009-01-26)
    • Adapt to version 0.3 of stacker (behavior initStacker)
  • Local SVN release 292 (jcdubacq,2009-01-22)
    • Update documentation, release new version 0.6
  • Local SVN release 259 (jcdubacq,2008-11-18)
    • Fix public url usage in admin area
  • Local SVN release 205 (jcdubacq,2008-07-24)
    • Add documentation, new version
  • Local SVN release 187 (jcdubacq,2008-07-09)
    • Add admin page, rewrite latexrender class to better fit the needs of DC2
  • Local SVN release 168 (jcdubacq,2008-05-06)
    • Order plugins and themes
  • Local SVN release 47 (jcdubacq,2008-02-15)
    • Add latexrender plugin

Travail restant à faire

  • Faire une version qui ne dépend pas de l'extension stacker
  • Faire un retour auprès des auteurs initiaux de class.latexrender.php
  • Gérer les couleurs des thèmes indépendamment des thèmes
  • Travailler avec Sacha pour fournir une version client/serveur de latexrender qui sait fournir l'image et le décalage, et avec des conditions de sécurité suffisantes (le calcul des images peut être coûteux ou risqué si n'importe qui peut le faire).

Sites map