Vlad Merzheviç
Nuk më pëlqen vërtet MathML - është i rëndë, i vështirë, i tepërt dhe i papërshtatshëm për redaktim manual. Mundohuni të ndryshoni shpejt një karakter në një formulë të gjatë dhe do ta urreni MathML. Kjo është gjëja e TEX-it, plaku Knut e dinte biznesin e tij dhe shkroi një sistem për veten e tij, më vonë TEX u bë standardi de fakto në komunitetin shkencor për të shkruar formula. Nëse jeni të njohur me HTML dhe CSS, atëherë TEX është i lehtë për t'u kuptuar, është intuitiv dhe ka një sintaksë disi të ngjashme me këto gjuhë.
Vërtetë, problemi mbetet se si të shfaqni formulën në faqe në mënyrë që të shfaqet saktë në të gjithë shfletuesit. nga më së shumti mënyrë universale imazhi mbetet ende, vetëm ne duhet të automatizojmë dhe thjeshtojmë procesin e krijimit të fotografive, për të cilat ato janë të destinuara shërbime të ndryshme, e cila do të diskutohet në vijim.
Redaktori i ekuacioneve LaTeX
Është më mirë të filloni njohjen tuaj me botën e formulave nga ky shërbim, pasi ai ka një redaktues të vogël në internet përmes të cilit mund të kuptoni LaTEX - ky është një zgjerim i sistemit TEX me të njëjtën sintaksë. Pasi të shtypet formula, rezultati mund të shihet duke klikuar në butonin "Render Equation" (Fig. 1).
Oriz. 1. Pamja e redaktorit në faqe
Formula shtohet në faqen tuaj nëpërmjet etiketës siç tregohet në shembullin 1.
Formula në formatin TEX futet në adresë pas pikëpyetjes dhe shkruhet një rresht. Nëse dëshironi të rrisni ose zvogëloni madhësinë e imazhit, atëherë zbatohen fjalët kyçe të mëposhtme.
- \ i vogël (madhësia 8 pt)
- \ i vogël (10 pikë)
- \normale (12 pikë)
- \ i madh (14 pikë)
- \ i madh (20 pikë)
Fjala kyçe duhet të futet përpara formulës, siç tregohet më poshtë.
Në faqe, një formulë e tillë e zmadhuar duket kështu (Fig. 2).
Oriz. 2. Formula në faqe
Fatkeqësisht, Google e ndërpreu mbështetjen e këtij shërbimi dhe fati i tij i mëtejshëm nuk dihet, por tani për tani ai vazhdon të funksionojë normalisht dhe mund të përdoret.
Parimi i futjes së një formule është i njëjtë si për shërbimin e mëparshëm. Ne përdorim etiketën dhe si adresë i referohemi shërbimit Google dhe i kalojmë formulën në formatin TEX. Vetë adresa pamje e përgjithshmeështë shkruar kështu.
https://chart.googleapis.com/chart?cht=tx&chl=formula
Shembulli 2 tregon shtimin e një formule të shpërndarjes normale.
Për të ndryshuar madhësinë e formulës, mund të përdorim fjalë kyçe\tiny, \large etj., duke i shtuar para shprehjes. Google gjithashtu ka një mënyrë tjetër për të kontrolluar madhësinë e imazhit, për këtë ju duhet të shtoni parametrin chs= në adresën e tij<ширина>x<высота>, për shembull chs=200x20. Ju lutemi vini re se përmasat e figurës mund të shtrembërohen shumë nëse zgjidhni raportin e gabuar të pamjes. Parametri i vetëm (chs=40) merret si lartësia e figurës, ndërsa gjerësia do të llogaritet automatikisht (shembulli 3).
Shembulli 3: Madhësia e imazhit
Një imazh i formulës me një lartësi prej 40 pikselësh është paraqitur në fig. 3.
Oriz. 3. Formula me lartësi të caktuar
MathJax
Nëse faqja juaj duhet të shfaqë shumë formula të ndryshme dhe simbolet matematikore, atëherë ka kuptim të lidhni lokalin Biblioteka MathJax. Kjo bibliotekë funksionon në të gjithë shfletuesit, duke përfshirë versionet më të vjetra të IE, si dhe në iPhone, iPad dhe Android, mbështet shënimet MathML, TEX dhe AsciiMath.
Për të përdorur MathJax, duhet të shkarkoni bibliotekën dhe të gjithë skedarët e kërkuar për funksionimin e saj dhe t'i kopjoni ato në serverin tuaj. Mund ta bëni më lehtë dhe ta shkarkoni skriptin përmes rrjetit, siç tregohet më poshtë.
Skedari kryesor JS merr rreth 50 Kb, por gjatë procesit ngarkon shkronja të ndryshme dhe skripte të tjera. Rezultati është rreth disa qindra kilobajt. Duket si shumë, por mbani në mend se shumica e skedarëve ruhen në memorie në shkarkimin e parë dhe herën tjetër që skedarët nuk ngarkohen.
Si parazgjedhje, formulat dallohen duke përdorur konstruksionin $$...$$ dhe \[...\], dhe karakteret dhe shprehjet e vogla dallohen duke përdorur \(...\) (shembulli 4).
Shembulli 4: Përdorimi i MathJax
Kur \(a \ne 0\) marrim dy rrënjë të ekuacionit \(ax^2 + bx + c = 0\), të cilat mund të gjenden duke përdorur formulën $$(x)_(1,2) = ( -b \pm \ sqrt(b^2-4ac) \mbi 2a).$$
Rezultati ky shembull treguar në fig. 4.
Oriz. 4. Formulat në faqe
Nëse klikoni mbi formulën klikoni me të djathtën miut, do të hapet një menu, përmes së cilës mund të konfiguroni disa parametra dhe të shikoni burimin në formën e TEX ose MathML (Fig. 5).
Oriz. 5. Menyja e kontekstit
MathJax ju lejon të përfshini formulat matematikore në faqet e internetit që përdorin shënimin LaTeX, MathML ose AsciiMath, pas së cilës formulat do të përpunohen nga një bibliotekë javascript dhe do të konvertohen në HTML, SVG ose MathML për t'u shfaqur në çdo shfletues modern.
MathJax aktualisht ju lejon të përdorni si kopje të kësaj biblioteke në serverin e vet, dhe versioni i bibliotekës nga CDN cdn.mathjax.org:
Konfigurimi TeX-AMS-MML_HTMLorMML është një nga skedarët e konfigurimit më të zakonshëm (dhe rrjedhimisht më i madhi). Megjithëse ky konfigurim mund të mos jetë efikas, ai përfshihet këtu për hir të lehtësisë. fillim i shpejte duke përdorur MathJax.
Referencë e shpejtë
Meqenëse shënimi LaTeX më dukej më konciz, në vijim përshkruhen vetëm pyetjet në lidhje me përdorimin e tij kur punoni me MathJax:
- për të parë se si është shkruar ndonjë nga formulat, kliko me të djathtën mbi shprehjen dhe zgjidh "Trego Math As > Komandat TeX" (karakteret ndarëse nuk shfaqen);
- për të shfaqur formulat në një bllok të veçantë mbështilleni me ndarës $$...$$ ose \[...\] \[\sum_(i=0)^n i^2 = \frac((n^2+n)(2n+1))(6)\]
- për të shfaqur formulat brenda një vargu mbylle atë në kufijtë \(...\). Për shembull, \(\sum_(i=0)^n i^2 = \frac((n^2+n)(2n+1))(6)\). Vini re se kufizuesit $...$ nuk mbështeten si parazgjedhje, pasi shenjat e vetme të dollarit mund të shfaqen në tekst dhe të bëjnë që teksti të konvertohet gabimisht në një formulë;
- për të shfaqur shkronjat e alfabetit grek, përdorni \alfa , \beta , …, \omega: \(\alfa\) , \(\beta\) , …, \(\omega\) . Për shkronjat e mëdha, përdorni \Gamma , \Delta , …, \Omega: \(\Gamma\) , \(\Delta\) , …, \(\Omega\) ;
- për mbishkrimet dhe nënshkrimet përdorni ^ dhe _ . Për shembull, x_i^2: \(x_i^2\) ;
- grupe. Mbishkrimi, nënshkrimi dhe operacionet e tjera zbatohen vetëm për "grupin" tjetër. Një "grup" është ose një karakter i vetëm ose ndonjë formulë e përfshirë mbajtëset(...) . Nëse bëni 10^10, papritmas do të merrni \(10^10\) . Por 10^(10) me siguri do t'ju japë atë që dëshironit: \(10^(10)\) . Përdorni mbajtëset kaçurrelë për të theksuar një formulë që zbatohet me shkronja të mëdha ose të vogla: x^5^6 do të shkaktojë një gabim; (x^y)^z përputhet me \((x^y)^z\) , dhe x^(y^z) përputhet me \(x^(y^z)\) . Vini re ndryshimin midis x^i^2 \(x_i^2\) dhe x_(i^2) \(x_(i^2)\) ;
- kllapa. Karakteret e vetme () krijojnë kllapa dhe kllapa katrore \((2+3)\) . Përdorni \( dhe \) për të shfaqur kllapat kaçurrelë \(\(\)\) .
Kllapat e përshkruara më sipër nuk përputhen me formulën. Kjo do të thotë, nëse shkruani (\frac(\sqrt x)(y^3)), kllapa të rrumbullakëta do të jetë shumë i vogël: \((\frac(\sqrt x)(y^3))\) . Përdorimi i \left(dhe \right) do të rregullojë automatikisht madhësinë e kllapave në madhësinë e formulës që ato rrethojnë: \left(\frac(\sqrt x)(y^3)\right) përputhet \(\majtas(\frac(\sqrt x)(y^3)\djathtas)\). \majtas dhe \djathtas zbatohen për të gjitha llojet e mëposhtme të kllapave: (dhe) \(\left(x\djathtas)\) , [dhe ] \(\left\) , \( dhe \) \(\left\( x\ djathtas\)\) , | \(\majtas|x\djathtas|\) , \langle dhe \rangle \(\majtas\langle x\djathtas\rangle\), \lceil dhe \rceil \(\left\lceil x\right\rceil\) , dhe \ldysheme dhe \rdyshe \(\majtas\lkati x\djathtas\rkati\).
Ka edhe kllapa të padukshme, të treguara. : \majtas.\frac12\right\rbrace përputhet \(\majtas.\frac12\djathtas\rbrace\); - shumat dhe integralet\sum dhe \int ; indeksi i poshtëm korrespondon me kufirin e poshtëm, dhe indeksi i sipërm i korrespondon kufirit të sipërm. Për shembull, \sum_1^n \(\sum_1^n\) . Mos harroni (...) nëse kufijtë përbëhen nga më shumë se një karakter. Për shembull, \sum_(i=0)^\infty i^2 përputhet me \(\sum_(i=0)^\infty i^2\) . Në mënyrë të ngjashme \prod \(\prod\) , \int \(\int\) , \bigcup \(\bigcup\) , \bigcap \(\bigcap\) , \iint \(\iint\) ;
- thyesat. Ka dy mënyra për të krijuar një thyesë. \frac ab aplikohet në dy grupet e ardhshme dhe gjeneron \(\frac ab\) e mëposhtme; për numërues dhe emërues më kompleks, përdorni (...) : \frac(a+1)(b+1) përputhet \(\frac(a+1)(b+1)\) . Nëse numëruesi dhe emëruesi janë shumë komplekse, mund të përdorni \over , e cila ndan grupin në të cilin ndodhet: (a+1\mbi b+1) përputhet me \((a+1\mbi b+1)\) ;
- fontet
- përdorni \mathbb ose \Bbb për shkronja të zeza: \(\mathbb(CHNQRZ)\) ;
- përdorni \mathbf për shkronja të zeza: \(\mathbf(ABCDEFGHIJKLMNOPQRSTUVWXYZ)\) \(\mathbf(abcdefghijklmnopqrstuvwxyz)\);
- përdorni \mathtt për fontin "typewriter": \(\mathtt(ABCDEFGHIJKLMNOPQRSTUVWXYZ)\) \(\mathtt(abcdefghijklmnopqrstuvwxyz)\);
- përdorni \ mathrm për fontin "roman": \(\mathrm(ABCDEFGHIJKLMNOPQRSTUVWXYZ)\) \(\ mathrm(abcdefghijklmnopqrstuvwxyz)\);
- përdorni \mathsf për një font sans-serif: \(\mathsf(ABCDEFGHIJKLMNOPQRSTUVWXYZ)\) \(\mathsf(abcdefghijklmnopqrstuvwxyz)\);
- përdorni \mathcal për shkrimin "kaligrafik": \(\mathcal(ABCDEFGHIJKLMNOPQRSTUVWXYZ)\);
- përdorni \mathscr për një font "të shkruar" (si të shkruar me dorë): \(\mathscr(ABCDEFGHIJKLMNOPQRSTUVWXYZ)\);
- përdorni \mathfrak për fontin "Fraktur" (stili i vjetër gjerman): \(\mathfrak(ABCDEFGHIJKLMNOPQRSTUVWXYZ) \mathfrak(abcdefghijklmnopqrstuvwxyz)\);
- shenjat e rrënjës. Përdorni \sqrt, i cili përshtatet me madhësinë e argumentit: \sqrt(x^3) \(\sqrt(x^3)\) ; \sqrt(\frac xy) \(\sqrt(\frac xy)\) . Për shprehje komplekse preferohet përdorimi i (...)^(1/2);
- disa funksione, si "lim", "sin", "max", "ln", etj., zakonisht përdorin "roman" (roman) në vend të "italisht" (italic). Përdorni \lim, \sin, etj. për të marrë diçka si \sin x \(\sin x\), jo sin x \(sin x\). Përdorni nënshkrimet për të bashkangjitur etiketa shtesë në \lim: \lim_(x\në 0) \[\lim_(x\në 0)\]
- ekziston gjithashtu nje numer i madh i karaktere dhe simbole të veçanta për të renditur këtu nga të gjitha. Këtu janë disa nga më të përdorurat:
- \lt \gt \le \ge \neq \(\lt\, \gt\, \le\, \ge\, \neq\). Ju mund të përdorni \jo për të vendosur një vijë të pjerrët në pothuajse çdo gjë: \jo\lt \(\not\lt\) , por kjo shpesh duket e shëmtuar;
- \herë \div \pm \mp \(\herë\, \div\, \pm\, \mp\) . \cdot përputhet me një pikë në qendër: \(x \cdot y\) ;
- \ cup \cap \setminus \nëngrupi \subseteq \subsetneq \supset \in \notin \emptyset \varnothing \(\kupë\, \cap\, \setminus\, \nënbashkësi\, \subseteq \,\subsetneq \,\supset\, \in\, \notin\, \emptyset\, \varnothing\);
- (n+1 \zgjidh 2k) ose \binom(n+1)(2k) \((n+1 \zgjidh 2k)\) ;
- \te \djathtas \djathtastarrow \Rightarrow \Leftarrow \mapsto \(\në\, \djathtas\, \djathtas\, \Rightarrow\, \Leftarrow\, \mapsto\);
- \land \lor \lnuk \përgjithësisht \ekziston \lart \bot \vdash \vDash \(\tokë\, \lor\, \ljo\, \përgjithësisht\, \ekziston\, \lart\, \bot\, \vdash\, \vDash\);
- \star \ast \oplus \circ \bullet \(\yll\, \ast\, \oplus\, \circ\, \bullet\);
- \përafërsisht \sim \simeq \cong \equiv \prec \(\përafërsisht\, \sim \, \simeq\, \cong\, \equiv\, \prec\);
- \infty \aleph_0 \(\infty\, \aleph_0\) \nabla \partial \(\nabla\, \partial\) \Im \Re \(\Im\, \Re\) ;
- për krahasime të modulit përdorni \pmod, p.sh. a\equiv b\pmod n \(a\equiv b\pmod n\);
- \ldots përputhet me elipsin në \(a_1, a_2, \ldots ,a_n\); \cdots përputhet me elipsin në \(a_1+a_2+\cdots+a_n\) ;
- disa shkronja greke kanë një drejtshkrim për një ndryshore: \epsilon \varepsilon \(\epsilon\, \varepsilon\) , \phi \varphi \(\phi\, \varphi\) etj. "I shkruar" (i shkruar me dorë) l in shkronja të vogla: \ell \(\ell\) .
Detexify ju lejon të vizatoni një karakter në një faqe interneti dhe më pas liston karakteret \(\TeX\) që duken si ai që keni vizatuar. Kjo nuk është e garantuar të funksionojë edhe në MathJax, por kjo një vend i mirë për të filluar kërkimin. Për të kontrolluar nëse një komandë mbështetet, hidhini një sy listës aktuale të komandave të mbështetura \(\LaTeX\) në MathJax.org.
- hapësirat. MathJax zakonisht vendos se si të përdorë hapësirat në formula duke përdorur një grup rregullash komplekse. Printimi i hapësirave shtesë në formula nuk do të ndryshojë numrin e hapësirave që MathJax shton në formulë: a␣b dhe a␣␣␣␣b përputhen \(a b\) . Për të shtuar më shumë hapësira përdorni \, për hapësirë të ngushtë \(a\,b\) ose \; për hapësirë të gjerë \(a\;b\) . Ndeshja \katër dhe \qquad boshllëqe të mëdha\(a\quad b\) , \(a\qquad b\) .
Për të përdorur tekst të thjeshtë përdorni \text(...) : \(\(x\në s\mesi x\teksti (është tepër i madh)\)\); - thekse dhe diakritikë. Përdorni \hat për një karakter të vetëm \(\hat x\) , \widehat për formulën \(\widehat(xy)\) (por nëse e bëni karakterin shumë të gjerë do të duket qesharake). Në mënyrë të ngjashme \bar \(\bar x\) dhe \overline \(\overline(xyz)\) , dhe \vec \(\vec x\) dhe \overrightarrow \(\overrightarrow(xy)\) dhe \overleftrightarrow \ ( \shigjeta mbi majtas djathtas (xy)\) . Për pikë si \(\frac d(dx)x\pik x = \pik x^2 + x\ddot x\), përdorni \dot dhe \ddot ;
- Simbole të veçanta, përdoret për të interpretuar MathJax mund të jetë të mbrojtura, duke përdorur karakterin \: \$ \(\$\) , \( \(\(\) , \_ \(\_\) etj. Nëse dëshironi karakterin \, duhet të përdorni \backslash \(\ backslash\), pasi \\ përputhet me një rresht të ri.
Para HTML5, përdorimi i formulave ishte një dhimbje e vërtetë në gomar. Gjykoni vetë: në vitin 2005 ishte e nevojshme të kishim në dorë shfletues i veçantë, ose ndani tekstin në HTML të duhur dhe futeni nga imazhet ose PDF. Kërkimi dhe operacionet e tjera të redaktimit dhe/ose daljes në ekran/letër ishte një detyrë e paqartë, së cilës i kushtoheshin monografi të tëra.
Në vitin 2012, ishte tashmë më e lehtë. Tani mund të lidhni shtojcat e nevojshme (Firemath për FireFox dhe Daum Equation Editor për Chrome). Por paqartësia e standardeve (dhe mbështetjes) në fakt na detyroi të shkruajmë të njëjtin artikull për secilin nga shfletuesit (dhe për versionet e tyre). Ose përshëndetni përdoruesit me një përshëndetje magjike "Shfletuesi juaj duhet të përditësohet/shtohet me një shtesë".
të pakëndshme? - Po! U desh shumë kohë për të kërkuar zgjidhje me një ndalesë? - Po! Ju bën të mendoni se çfarë lloj regjistrimi është më i mirë (prezantim apo përmbajtje), cilin konvertues të përdorni (dhe ka vetëm një duzinë prej tyre të njohur)? - PO! PO! PO!
Si rezultat, puna e botimit u shndërrua në zhvillimin e dy ose tre leksikoneve të shënjimit dhe studimin e funksionimit të të paktën një programi transkoder.
Tani, me ardhjen e HTML5, gjërat janë bërë shumë më të lehta. Ka një enë të re