KaTeX

티스토리 블로그에 Tex 로 수학식 넣기 - 2

짱세디럭스 2019. 7. 28. 03:22

MathJax와 KaTex는 둘다 동일하게 Tex (발음 : 텍)이라는 문법을 사용하여 수식을 입력합니다.

 

$\TeX$

https://ko.wikipedia.org/wiki/TeX

 

TeX - 위키백과, 우리 모두의 백과사전

위키백과, 우리 모두의 백과사전. TeX(그리스어: IPA: [ˈtɛx] 테흐[*], 영어: IPA: [ˈtɛk] 텍[*], T E X {\displaystyle {\mathrm {T\!_{\displaystyle E}\!X} }} )[1]은 도널드 커누스가 만든 조판 프로그램이다.[2] TeX 개발의 두 가지 목적은, 최소한의 노력으로 미려한 문서를 얻을 수 있도록 하는 것과, 컴퓨터 기종과 상관없이 똑같은 결과물을 얻도록 하는 것이다. 따라서 TeX으

ko.wikipedia.org

 

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 문법을 지원합니다. 이것은 수식이 간단한 경우 HTML로, 복잡한 경우에는 PNG 그림으로 나타납니다. 또한 사용자 설정에서 TeX 표시 방법을 조절할 수도 있습니다. 이 기능을 사용하려면 ... 사이에 TeX 문법을 쓰면 됩니다. 이 태그 내에서의 줄바꿈

ko.wikipedia.org

 

일반적으로 TeX의 절대다수 사용자는 최종 결과물을 종이문서 혹은 전자문서로 사용합니다.

이때 TeX문법을 조금 확장하여 해당 용도로 쓰기 좋게 만든 것이 바로 LaTex(발음:레이텍)입니다.

 

$\LaTeX$

https://www.latex-project.org/

 

LaTeX - A document preparation system

LaTeX – A document preparation system LaTeX is a high-quality typesetting system; it includes features designed for the production of technical and scientific documentation. LaTeX is the de facto standard for the communication and publication of scientific

www.latex-project.org

Tex문법에 대한 대다수의 정보는 이 LaTex으로 귀결되는 것이 사실이나, 우리의 현재 관심사는 아닙니다.

솔직히 말하면, 인류가 가진 정보는 궁극적으로 웹지향적으로 되어야 한다고 보는것이 제 철학이기도 하고요.

 

그러므로 LaTex에 관해서는 깊게 서술하지 않겠습니다.

애초에, 엄청나게 많은 정보가 살아 숨쉬고 있습니다.

조금만 검색해보시면 나올거에요.

 

우리의 관심사는 이 TeX문법을 웹에 적용하는 방법이니까요.

 

그러면 웹에 적용하는 솔루션에 대해서 다음 포스팅에서 알아보도록 하죠.