PHP tabanlı LaTeX ayrıştırıcı -

6 Cevap php

Proje: PHP LaTeX-to-MathML çevirmen inşa etmek istiyorum. Neden? Ben bir matematikçi değilim, ve benim Drupal sitede matematik yayınlamak istiyorum çünkü. Temel belge düzeyi şeyler hünerle CMS tarafından ele alınır ve başlamak için LaTeX yazılı olmaz, çünkü Latex'in tüm çevirmek zorunda değildir; sadece MathML yazılı matematik içine LaTeX yazılı matematik çevirmek zorundadır. Ben durum tespiti yaptık sanki hissediyorum rağmen, bu zaten mevcut görünmüyor. Belki de bu amaca hizmet edecek bir şey biliyorsanız, tüm yollarla bana bildirin --- yanılıyorum, ve şimdiden teşekkür ederiz. Ama yok varsayarak, ben kendim yazmak gitmek zorunda sanırım.

Burada bir şey olsa da, var: Ben bu iddialı bir şey yapmadım. Gerçekten nereden başlayacağınızı bilmiyorsanız. Ben sadece şeyler-tipi "PHP ve MySQL ile bir CMS kurmak" standart yapmak için yıllardır kullanılan PHP, ama ettik. Ben başka bir dilden çeviri gibi görünüşte sofistike bir şey denedi hiç.

Sonuçta ben LaTeX çok daha resmi bir dildir --- regex yapıyor düşünün sadece yeterince aptal değilim, ve dediği gibi HTML, patolojik kenar vakalarının yaklaşık türlü izin vermez. Şimdi iki sorun var, ve eminim this guy gibi bitirmek istemiyorum: Ama diğer taraftan, ben bu muhtemelen kötü bir fikir olduğunu fark edecek kadar zeki değilim.

O (değil mi?) Gitmek için yol değil Yani, nedir? Nasıl bu sorun hakkında düşünmeye başlamak gerekir? Ben aslında PHP LaTeX derleyici yazıyorum, ve eğer öyleyse, ben yapmak bilmek gerekir mi (gibi, ben sadece ilk Purple Dragon book oku gitmeli?)?

Ben de gerçekten heyecanlı ve güzel bu projenin umudu ile korkutmak değilim, ama hey, bu doğru, hepimiz programcılar olmayı öğrenmek nasıl? Ihtiyacımız olan bir şey yoksa, size noktası olsun ... zorunluluk annesi olduğunu, gidip onu kurmak. Her türlü rehberlik için şimdiden herkese büyük teşekkürler sunabilir.

6 Cevap

Eğer bir öğrenme deneyimi olarak bunu yapmak istemediğiniz sürece, çözümleyici kendiniz yazmayın. Sadece PHP mevcut LaTeX araç dizileri diyoruz.

Eğer latex2html sürdürücü gelen description of a LaTeX to MathML convertor almak için gidiyor ve burada bir (eski) bulunuyor konum olarak latex2html yaklaşık olarak iyidir.

Peki bu cevap bir karışıklık oldu.

İşte temizlenmiş versiyonu:

Regex en net şey bu tür için bir çevirmen için kesmek değil, çünkü size hedeflerinize dayalı olarak, iki seçeneğiniz var:

  1. You just want to be able to display LATEX on your site one way or another.
    • If this is what you want, there is a simple solution somewhere out there for you that is easier than picking up an advanced book on compiler theory. Either some way to include latex on your site, an existing translator, or something.

  2. You are a keener, and want to learn about compiler theory.
    • Bu durumda, ben son derece yeterli PDB tavsiye edemez. Bu büyüleyici bir kitap, ve ondan çok şey öğreneceksiniz; İlk iki bölümden sonra, bu projeyi tamamlamak için sözcüksel analiz hakkında yeterli öğrenmiş olacak. Ben bugüne kadar bir eğitim kaynağı üzerinde geçirdim iyi para!

Resimlere formülleri dönüştürme ile tamam ise, çözümleri ton vardır. Özellikle MathML istiyorsanız, several in those well olarak vardır. Ancak, tarayıcıda LaTeX (bir alt kümesini) işlemek için javascript kullanır jsMath hangi düşünebilirsiniz. Bu Sage tarafından kullanılan ve orada iyi çalışıyor oluyor.

Vikipedi HTML bir LaTeX kullanarak (veya resim) çevirmen OCaml yazılmış. Orada bazı kod ödünç, ya da olduğu gibi sadece kullanabilirsiniz.

Aslında bu son yılda bir gitmek vardı. Ben bunun için herhangi bir şıklık ya da çekicilik vardı iddia olmaz ama ben bir şey çalışma var, ne de tamamen işlevsel oldu.

Bunun yerine tam LaTeX dönüşümden çok, MathML denklemler dönüştürmek istiyorsanız, o zaman itex2MML kullanabilirsiniz. Eğer PHP içine uzantılarını yükleyebilirsiniz, eğer PHP-bağlamaları ile itex2MML derlemek ve komut yerel olarak kullanmak mümkündür. Makefile tüm yapılandırmalar sağ olsun hack biraz gerekebilir.

Bağlantılar: