генерация png файлов уравнений на основе математического ввода - PullRequest
9 голосов
/ 10 июля 2010

Мне было интересно, какие параметры были доступны для генерации .png в зависимости от вида ввода, который подается графическим калькулятором .. так что

(y ^ 2 + 5x + 3) / ((3x + 3)+ 5y + 18)

вернется

alt text

Единственное, что я нашел до сих пор, это texvc в mediawiki, но, кажется, излишне получать всюMediaWiki для одного из его модулей.

Ответы [ 6 ]

9 голосов
/ 10 июля 2010

API Google Chart имеет эту функцию, оно принимает вход TeX и создает выходное изображение.

http://chart.apis.google.com/chart?cht=tx&chl=%5Cfrac%7By%5E2%2B5x%2B3%7D%7B(3x%2B3)%2B5y%2B18%7D

Другой вариант - jsMath .

2 голосов
/ 10 июля 2010

Математический движок Matplotlib может превратить подмножество TeX в изображения. См. MathtextBackendBitmap для решения, которое не требует других бэкэндов matplotlib.

Если это не поможет, у matplotlib также есть код, который вызывает TeX и dvipng.

Мудрец также может содержать некоторый полезный код.

2 голосов
/ 10 июля 2010

Опция с использованием Mathematica:

Export["etc.png", 
 Rasterize[TraditionalForm[HoldForm[(y^2 + 5 x + 3)/((3 x + 3) + 5 y + 18)]]]]

, который производит этот файл изображения:

альтернативный текст http://i32.tinypic.com/2qtbekz.png

2 голосов
/ 10 июля 2010

Есть dvipng, который поставляется с TeX.У него много параметров, чтобы вертеться.Это хорошо, если вы хотите такой контроль, но плохо, если вы хотите что-то более простое в использовании.

1 голос
/ 10 июля 2010

Как указывалось многими людьми, TeX может быть самым простым путем - поиск python tex дает некоторые возможности, одним из более простых может быть: http://pypi.python.org/pypi/tex/1.5

Это просто оболочка для вызоваTex в качестве подпроцесса и имеет файл "dvi" - вам все равно придется запустить dvipng (который, как говорит @JohnCook, поставляется с TeX), чтобы получить ваш файл png.

Недостатком является то, чтовам нужно настроить полную цепочку инструментов TeX (это не проблема для большинства дистрибутивов Linux).

Другой способ - получить библиотеки рендеринга MathMl, но тогда вам нужно собрать разметку MathML дляуравнение юр.Вот многообещающий Python MathML для SVGmodule здесь: http://sourceforge.net/projects/svgmath/ Это должно иметь меньше библиотечных зависимостей, и в зависимости от ваших целей SVG может быть более подходящим, чем .PNG для уравнений.Иначе, снова попросите stackoverflow перейти от .svg к .png в Python: -)

0 голосов
/ 11 июля 2010

Есть сайт EquationSheet.com , который позволяет вам ввести LaTeX и получить обратно URL сгенерированного изображения. Может быть, ваш сайт мог бы использовать его.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...