Pregunta

Soy curioso en cuanto a si existe o no un procesador de .NET nativo para TeX / LaTeX. El partido más cercano que he podido encontrar es una aplicación Java, JMathTeX . Estoy tentado a puerto esta a C #, pero antes de hacerlo, simplemente me gustaría comprobar si alguien tiene conocimiento de una aplicación .NET que hay.

Mis pensamientos actuales son utilizar MiKTeX junto con dvipng para compilar la fuente TeX y hacer que el DVI generado como PNG, pero todavía me estoy preocupando Esto puede incurrir en una cantidad inaceptable de los gastos generales, por no hablar de la necesidad de vincular MiKTeX con el programa dado.

¿Fue útil?

Solución

Si no me equivoco, TeX está escrito en un dialecto de Pascal, y cuando se compila Hoy en día es generalmente primer compilado en C estándar, entonces compilado con un compilador C para producir el binario final. Puede ser que sea factible para compilar el código en lugar de Pascal original en C # y tal vez escribir una envoltura alrededor de ella en C # para poder utilizarlo como una biblioteca.

Por supuesto, esto es un proyecto bastante grande para asumir y es algo excesivo para su problema en cuestión.

Otros consejos

A C # aplicación pura de látex por verybadcat.

  

Este es un puerto de C # de la maravillosa motor iosMath LaTeX.

     

Se está trabajando ahora en la mayoría de los casos. Algunos ejemplos son a continuación. Irónicamente   suficiente, el primer extremo frontal es iOS. Sin embargo, si desea añadir una   front-end, tales como Xamarin.Forms o un entorno Windows, lo que debería   ser posible. Usted tendría que definir su propio TypesettingContext y   escribir una implementación de IGraphicsContext. El TypesettingContext en   a su vez tiene varios componentes, incluyendo la elección de un tipo de letra. Con suerte, usted   No tendría que tocar el motor de composición del núcleo. (Si lo hace, le   consideraría que un error.)

CSharpMath ejemplo

Esto es muy atrasados, pero pensé que había puesto un enlace a un puerto reavivado y ampliada de la WPF-Math proyecto, que empecé a no mucho tiempo después de esta pregunta original, y todavía ayudo a mantener en una capacidad menor. Originalmente fue un puerto de JMathTex , pero desde entonces se ha ampliado para incluir mucho más. Por el momento, está en el proceso de obtener la extracción de grasas distintos de WPF.

utilizar este código !!!

        const string latex = @"\frac{2+2}{2}";
        const string fileName = @"formula.png";

        File.Open(fileName, FileMode.OpenOrCreate).Close();

        var parser = new WpfMath.TexFormulaParser();
        var formula = parser.Parse(latex);
        var renderer = formula.GetRenderer(WpfMath.TexStyle.Display, 20.0, "Arial");
        var bitmapSource = renderer.RenderToBitmap(0, 0);

        var encoder = new System.Windows.Media.Imaging.PngBitmapEncoder();
        encoder.Frames.Add(System.Windows.Media.Imaging.BitmapFrame.Create(bitmapSource));
        using (var target = new FileStream(fileName, FileMode.Create))
        {
            encoder.Save(target);
        }

        pictureBox2.Image = Image.FromFile(fileName);
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top