MathJax와 KaTex는 둘다 동일하게 Tex (발음 : 텍)이라는 문법을 사용하여 수식을 입력합니다.
$\TeX$
https://ko.wikipedia.org/wiki/TeX
TeX문법은 조금만 배워보면 금방 따라할수 있을만큼 간단합니다.
또한 강력하죠.
이를테면 참 별것아닌 분수를 표현하려면 웹에서 거의 불가능합니다만,
TeX문법을 이용하면 다음과 같이 쓸 수 있습니다.
\frac{b}{a}
영어로 분수가 fraction이죠. 그래서 역슬래쉬(혹은 원화표시)를 쓴 뒤 약속된 문법인 frac을 쓰고, 분자 분모순으로 중괄호를 사용해 묶어서 나타낸겁니다.
결과는?
$$ \frac{b}{a} $$
다음과 같이 이쁘게 분수가 나오게 됩니다.
생각보다 별거 없는거 같은데? 라고 생각할지 모르겠는데, 이러한 문법을 조합하는것이 가능합니다.
이를테면,
$$ \frac{b}{1+\frac{b}{1+\frac{b}{1+\frac{b}{1+a}}}} $$
\frac{b}{1+\frac{b}{1+\frac{b}{1+\frac{b}{1+a}}}}
이런 복잡한 수식도 입력이 가능합니다.
코드를 잘 뜯어보시면 아시겠지만, 분모가 들어갈 자리에 다시 재차 분수코드를 넣어서 만든 코드입니다.
결국 응용하면 복잡한 수식도 얼마든지 코딩을 통해 표현할 수 있고,
이를 웹에서 네이티브로 구현해주는 솔루션만 결합한다면 웹에서 수식을 표현할 수 있게 되는 것이죠.
예시로 하나만 더 보여드릴께요.
$$x = \frac{-b \pm \sqrt{b^2-4ac}}{2a}$$
x = \frac{-b \pm \sqrt{b^2-4ac}}{2a}
코드와 결과물을 조금 뜯어보시면, 어느 코드가 무엇을 의미하는지 까지 이해가 가능하실겁니다.
이해가 안되더라도, 이런 간단한 코드로 이런 복잡한 수식을 쓸 수 있다는 것만 이해하셔도 됩니다.
현실적으로 수식을 코딩하는 가장 강력하고, 또 가장 보편적인 문법이라는 것만 아셔도 충분합니다.
조금 해설을 드리면, pm과 sqrt는 각각 플러스마이너스, 그리고 제곱근을 의미합니다.
제곱근은 그 안에 들어가야 할 내용을 중괄호로 묶었구요.
그리고 ^는 대부분 공통적으로 지수를 뜻하고, 그 전체를 분수인 frac으로 묶은 겁니다.
구체적으로 문법들을 알고 싶으시다면, 다음의 링크를 탐구 하시는것이 더 도움이 되실겁니다.
https://ko.wikipedia.org/wiki/위키백과:TeX_문법
일반적으로 TeX의 절대다수 사용자는 최종 결과물을 종이문서 혹은 전자문서로 사용합니다.
이때 TeX문법을 조금 확장하여 해당 용도로 쓰기 좋게 만든 것이 바로 LaTex(발음:레이텍)입니다.
$\LaTeX$
https://www.latex-project.org/
Tex문법에 대한 대다수의 정보는 이 LaTex으로 귀결되는 것이 사실이나, 우리의 현재 관심사는 아닙니다.
솔직히 말하면, 인류가 가진 정보는 궁극적으로 웹지향적으로 되어야 한다고 보는것이 제 철학이기도 하고요.
그러므로 LaTex에 관해서는 깊게 서술하지 않겠습니다.
애초에, 엄청나게 많은 정보가 살아 숨쉬고 있습니다.
조금만 검색해보시면 나올거에요.
우리의 관심사는 이 TeX문법을 웹에 적용하는 방법이니까요.
그러면 웹에 적용하는 솔루션에 대해서 다음 포스팅에서 알아보도록 하죠.
'KaTeX' 카테고리의 다른 글
티스토리 블로그에 Tex 로 수학식 넣기 - 4 (0) | 2019.07.28 |
---|---|
티스토리 블로그에 Tex 로 수학식 넣기 - 3 (0) | 2019.07.28 |
티스토리 블로그에 Tex 로 수학식 넣기 - 1 (0) | 2019.07.27 |