Jak przekonwertować równania LaTeX na SVG?


19

W tej chwili używam mimetexdo automatycznego konwertowania wiązki równań na obrazy gif.

Program jest szybki, ale obrazy wyglądają dość źle:

wprowadź opis zdjęcia tutaj

Jak mogę (szybko) przekonwertować równanie LaTeX na obraz SVG w wierszu poleceń?

Odpowiedzi:


16

pdf2svg działa całkiem dobrze.

Użyj, \pagestyle{empty}aby uniknąć numerów stron i pdfcrop(paczki texlive-extra-utils), aby usunąć puste miejsca wokół równań


1
To działa dobrze! Jest trochę powolny i mam wrażenie, że nadal nie robię tego dobrze ( oto skrypt, którego używam). Wielkie dzięki!
Stefano Palazzo

Użyj pdflatex zamiast lateksu, dvips i ps2pdf
Florian Diesch

1
Nie jest szybszy, ale działa całkiem dobrze. Naprawdę chciałbym rozwiązanie, które wykonuje to zadanie w czasie krótszym niż 100 ms, najlepiej bez zapisywania całego obciążenia plików, ale działa i jestem szczęśliwy. :-) To wynik twojej dotychczasowej odpowiedzi .
Stefano Palazzo

@Florian Diesch; przykładowy link wydaje się zepsuty, czy możesz to naprawić, być może osadzając przykładowy obraz?
enzotib

9

Nową opcją jest korzystanie mathjax-nodeznpm . Zainstaluj dystrybucję węzła, a następnie użyj, npmaby zainstalować mathjax-node:

$ npm install --global mathjax-node

Edycja: Musisz teraz zainstalować mathjax-node-cli, jednak mathjax-node-cli nie pokazuje się (jeszcze), więc musiałem przekazać repozytorium github:

$ npm install --global https://github.com/mathjax/mathjax-node-cli.git

Po zainstalowaniu będziesz mógł używać tex2svg:

$ /usr/local/lib/node_modules/mathjax-node-cli/bin/tex2svg \
'\sin^2{\theta} + \cos^2{\theta} = 1' > identity.svg

A wynik:

wynik tex2svg, zrasteryzowany przy 300dpi

Wygenerowany plik SVG jest poprawnie renderowany w przeglądarce, ale nie można go wyświetlić przy użyciu standardowych narzędzi do obrazowania .


1
nie ma binw/usr/local/lib/node_modules/mathjax-node/
Necktwi


Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.