tipos - principales etiquetas de html
Ecuaciones matemáticas en la web (16)
¿Cómo puedo representar ecuaciones matemáticas en la web? Ya estoy familiarizado con el modo matemático de LaTeX.
Katex
Un par de desarrolladores de la Academia Khan lanzaron una biblioteca rápida y ardiente basada en Tex llamada Katex :
- Rápido
- Alta calidad
- Autónomo; y,
- Se puede representar en el servidor
Parece una gran opción moderna.
Actualmente, el estado de la representación MathML del lado del cliente no está listo para una amplia adopción. Los medios que realmente necesita para representar MathML como una imagen. Cómo lo hará dependerá de su entorno.
¿Tiene acceso de root a su propio servidor? ¿Te sientes cómodo instalando software en él? En este caso, puede renderizar sus propias imágenes. Si está ejecutando un software de blogs o una wiki, generalmente puede encontrar un complemento que aproveche las capacidades de su plataforma. Este es generalmente el escenario idea si planea escribir muchas expresiones matemáticas.
Si aloja sus propias imágenes, puede preprocesarlas o utilizar una extensión como mimetex.cgi. Si permite que se representen expresiones MathML arbitrarias, corre el riesgo de que otros sitios web enlacen de forma directa su procesador de imágenes. Si coloca un filtro en su servidor web para evitar enlaces activos, también se bloqueará a las personas que visualicen su sitio a través de un lector de feeds.
Si no puede renderizar sus propias imágenes, o si solo tiene algunas expresiones que desea representar, entonces generalmente puede tener otro servicio que genere la imagen, y puede vincular la imagen en su sitio. La desventaja, por supuesto, es que dependes de otro sitio, que no recibe nada a cambio de que se muestren las imágenes por ti.
Los ejemplos de otros servicios (como se menciona en otros comentarios) incluyen: * site : alt text http://alt2.artofproblemsolving.com/Forum/latexrender/pictures/a/ f / c / afc183343d84d030898f589bac12a8d9cf04558a.gif * http://www.forkosh.com/mimetex.html : mimetex.cgi http://www.forkosh.dreamhost.com/mimetex.cgi?c=%5Csqrt%7Ba%5E2+ b% 5E2% 7D
La ventaja de usar mimetex es que uno puede cambiar fácilmente la fórmula y hacerla volver a renderizar.
El paquete jsMath es otra opción que usa el marcado LaTeX y las fuentes nativas. Citando de su página web http://www.math.union.edu/~dpvc/jsMath/ :
El paquete jsMath proporciona un método para incluir las matemáticas en las páginas HTML que funciona en varios navegadores bajo Windows, Macintosh OS X, Linux y otros sabores de Unix. Supera una serie de deficiencias del método tradicional de usar imágenes para representar las matemáticas: jsMath usa fuentes nativas, por lo que cambian de tamaño cuando cambia el tamaño del texto en su navegador, imprimen a la resolución completa de su impresora, y usted no tiene que esperar que se descarguen docenas de imágenes para ver las matemáticas en una página web. También hay ventajas para los autores de páginas web, ya que no es necesario preprocesar sus páginas web para generar imágenes, y las matemáticas se ingresan en formato TeX, por lo que es fácil crear y mantener sus páginas web.
Ver por ejemplo esta página o esa .
Hay una pequeña aplicación Mac llamada LatexIt que hace que sea muy fácil convertir ecuaciones LaTeX a PDF, PNG, etc.
(Lo uso para crear ecuaciones para mis diapositivas en Keynote o PowerPoint. Es muy bueno, con soporte para arrastrar y soltar, por lo que puede simplemente ''arrastrar'' las ecuaciones a cualquier parte para insertarlas).
He escrito un módulo de código abierto de JavaScript para hacer esto, llamado jqmath. Ver http://mathscribe.com/author/jqmath.html . Escribe ecuaciones en una sintaxis similar a TeX simplificada, y jqmath las convierte a MathML o HTML y CSS simples, dependiendo del navegador. Esto es más eficiente y accesible que usar imágenes.
Por cierto, algunos de los resúmenes y notas mencionados en las otras respuestas aquí están bastante desactualizados ahora. Además, Firefox admite MathML ahora, y webkit (Chrome y Safari) lo tiene en sus compilaciones nocturnas, aunque todavía no lo han publicado. Internet Explorer representa MathML si tiene el complemento MathPlayer. Opera falsifica MathML con una hoja de estilo. MathML es parte del estándar HTML 5, por lo que presumiblemente todos estos navegadores lo admitirán de forma nativa más temprano que tarde. Es cierto que hasta entonces, la salida de jqmath no se verá tan bien como la de TeX, pero es ciertamente legible, y definitivamente es una mejor solución para las páginas web en el futuro.
He usado ASCIIMathML para esto en el pasado. Es esencialmente una biblioteca de JavaScript y puede usar un complemento en IE para optimizar el rendimiento, pero también funciona sin él en IE y Firefox / Mozilla (aunque un poco más lento). La sintaxis admite un subconjunto de LaTeX, pero las diferencias causan cierta confusión, por lo que puede confundir a los usuarios, dependiendo de dónde provengan.
Aquí hay algunos enlaces para que pueda verificarlo usted mismo:
No es perfecto y no funciona en todos los navegadores (Safari, etc.), pero es algo que funciona al menos hoy, aunque en un subconjunto algo selectivo de la web.
LaTeX y MathML son las únicas formas "correctas" de hacer esto. Sin embargo, cada uno tiene limitaciones severas. Las otras opciones son imágenes (no son realmente óptimas si necesita editar las ecuaciones más adelante) o HTML complejo (requiere algo de capacitación, pero se puede hacer).
Las otras respuestas están desactualizadas. A partir de 2012, las bellas matemáticas son fáciles de escribir y representar. La tecnología se llama MathJax . Puedes verlo en acción silenciosa en MathOverflow y cientos de blogs matemáticos.
MathJax es un motor de visualización de JavaScript de código abierto para las matemáticas que funciona en todos los navegadores modernos. No más configuración para lectores. No más complementos de navegador. No más instalaciones de fuentes ... Simplemente funciona.
Mathjax es confiable y discreto, así que solo necesitas escribir las matemáticas. Lo haces en Tex (Latex), una sintaxis concisa con la que la mayoría de los científicos y matemáticos están familiarizados (y han compartido décadas de buenos tutoriales). Para Mathjax, simplemente escribe el código de Tex en línea en tu HTML entre dos signos de dólar, por ej.
Cuando $$ a / ne 0 $$, hay dos soluciones para $$ ax ^ 2 + bx + c = 0 $$ y son $$ x = {-b / pm / sqrt {b ^ 2-4ac} / más de 2a}. $$
Para usar Mathjax para representar tus cálculos, coloca una línea de Javascript en tu encabezado HTML:
<script type="text/javascript" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
Si publica en una plataforma como Wordpress, Tumblr o Blogger, hay complementos en sus galerías para hacer esto ( Wordpress ).
¿Cómo Mathjax rinde matemáticas? Con Javascript hace que tus cálculos sean hermosos en HTML y CSS (que se parecen notablemente al Latex) en una fracción de segundo. Si un navegador es compatible con MathML, también puede procesar las matemáticas, pero eso no es importante. Es un éxito popular porque el flujo de trabajo del usuario final es fácil, no por la tecnología que lo respalda.
Puede elegir usar Mathjax (sobre imágenes png) en Wikipedia si tiene una cuenta. Busque Special:Preferences
/ Apearance.
MathML es ridículo. No es legible ni humanamente editable (la ecuación cuadrática toma 800 caracteres , es 50 en Tex). Es solo otro lenguaje XML sin sentido . Afortunadamente, es obsoleto antes de que la mayoría de los navegadores lo admitan. ¡Ni siquiera se ve tan bien como Tex o Mathjax''s HTML-CSS!
Mis dos enfoques favoritos:
Del lado del cliente: MathJax . Vea algunos ejemplos aquí . Es muy fácil de usar e instalar y su desarrollo está respaldado por AMS y SIAM, entre otras instituciones científicas. Espero que esto se convierta en el estándar de facto para mostrar las matemáticas en la Web.
Lado del servidor: LaTeXML . Esto se usa para producir la Biblioteca Digital de Funciones Matemáticas del NIST . Suele ocasionar problemas si tiene macros personalizadas en sus fuentes TeX, pero en general da muy buenos resultados.
Presto fórmulas LaTeX "a pedido" en mi wiki. Básicamente, extraigo el código de látex de cada sección wiki y lo coloco en un archivo .tex (cuyo nombre de archivo es un md5sum del látex, por lo que si se usa el mismo código nuevamente, se usará el mismo tex y, por lo tanto, se usará la misma imagen) . El archivo tex se compila con látex por una tarea cron cada minuto, para producir primero a .ps, luego con el programa convertido a .png (nombrado de nuevo con el md5 original). La entrada de la wiki reemplaza el texto de látex con una etiqueta img que hace referencia a esta png (con el código original de látex como alternativa para lectores de texto).
Si quieres ir por este camino, ten mucho cuidado de desinfectar tu látex tanto como puedas. hay comandos en latex, como / input, que definitivamente no quiere dejar pasar, ya que cualquiera que los pueda usar podría incluir cualquier archivo legible en el disco de su servidor e incluirlo en la salida resultante de látex.
Para resolver este problema, Mediawiki (de la fama de wikipedia) tiene un complemento especial que desinfecta la entrada de látex, pero no quise usarlo por dos razones: primero no usé mediawiki, luego está escrito en OCaml y no lo hice. No quiero meterme con un idioma que no sé.
Puede generar imágenes de ecuaciones sobre la marcha a través de un servidor LaTeX.
http://www.forkosh.com/mimetex.html
Si está usando WordPress, puede usar LaTeX para WordPress ( http://wordpress.org/extend/plugins/latex/ ) plugin.
Puedes hacer más matemáticas directamente en HTML de lo que la gente cree. Vea estas notes .
La única forma segura de renderizar LaTeX es guardar la salida como una imagen. Algunos sitios intentan usar herramientas para hacer esto sobre la marcha, y nunca funcionan de manera confiable. Por ejemplo, en algunos blogs, esto funciona si visitas directamente la página web, pero no si pasas por Feedburner / Google Reader.
He tenido una experiencia terrible con el soporte de navegador MathML, tanto en Firefox como en IE. Ni siquiera lo intentes. Aún no. Quizás en unos años.
Aquí está el site que utilizo para compilar LaTeX a los gifs.
Si está dispuesto a usar PDF en lugar de HTML, las cosas se vuelven mucho más fáciles. Simplemente cree su documento LaTeX y use pdflatex
para compilarlo en PDF. Si va por la ruta en PDF, puede que le interese cómo incluir propiedades de PDF como autor, palabras clave, etc. en su archivo LaTeX. Además, esta página explica cómo marcar LaTeX para hacer enlaces en su PDF.
Resulta que esto es un poco doloroso.
Puede usar MathML , pero el soporte del navegador todavía es dudoso. Si está comenzando con el látex, tiene algunas opciones para convertirlo a html, pero todas terminarán convirtiendo las ecuaciones reales en imágenes e incrustándolas.
Nada tan bonito (a menos que recurras a pdf o algo así). Lo mejor dependerá un poco del tipo de contenido, de la cantidad de ecuaciones y de la complejidad de las ecuaciones.
Here hay un resumen decente.
Si usa imágenes, ¿un lector para un usuario ciego podrá leer la ecuación? Algunos pueden querer.
Tengo la impresión de que MediaWiki te permitirá ingresar el marcado LaTeX (o algo similar) y decidir dinámicamente la mejor manera de mostrarlo. Actualmente creo que utiliza HTML donde es posible para expresiones pequeñas e imágenes para expresiones más complicadas que no se pueden representar de otra manera; Sospecho que algún día podrá aprovechar cualquier otro método que se convierta en el estado del arte, es decir, MathML si los navegadores comienzan a apoyarlo. Por lo tanto, creo que puede encontrar que si usa MediaWiki como si fuera el motor de su sitio web, será compatible con lo que venga en el futuro.
texvc puede convertir ecuaciones matemáticas LaTeX a png o HTML.