Aller au contenu
Cragdoo Blog

Mathématiques LaTeX avec KaTeX, pré-rendues à la compilation

Math en ligne et en bloc, matrices, intégrales, sommes, équations de Maxwell et plus — toutes rendues à la compilation, avec la feuille de style KaTeX chargée uniquement sur les pages opt-in.

Rédaction 2 min de lecture

Ce site supporte les mathématiques de style LaTeX prêtes à l’emploi. Les équations sont parsées par remark-math et rendues en HTML + CSS pur à la compilation par rehype-katex.

Zéro JavaScript côté client. Toutes les équations ci-dessous sont du markup statique rendu côté serveur. KaTeX ne tourne que sur le serveur de build.

Ajoutez math: true au frontmatter de l’article (ou de la page) :

---
title: Mon article maths
math: true
---

Le composant MathStyles.astro n’est rendu que quand math: true, et le bundling CSS par page d’Astro garantit que katex.min.css (~29 ko) et ses fontes woff2 sont émis uniquement sur les pages qui les utilisent. Les pages sans maths ne téléchargent jamais la feuille de style.

Encadrez avec un dollar simple : $ ... $.

Le théorème de Pythagore énonce que a2+b2=c2a^2 + b^2 = c^2 pour tout triangle rectangle de côtés aa, bb et hypoténuse cc. L’identité d’Euler eiπ+1=0e^{i\pi} + 1 = 0 relie cinq constantes fondamentales. La constante de structure fine vaut environ α1/137,036\alpha \approx 1/137{,}036.

Pour échapper un dollar littéral hors maths, écrivez \$, ex. $5,00.

Utilisez $$ ... $$ sur leurs propres lignes pour des équations centrées.

x=b±b24ac2ax = \frac{-b \pm \sqrt{b^2 - 4ac}}{2a}

ex2dx=π\int_{-\infty}^{\infty} e^{-x^2}\, dx = \sqrt{\pi}

eiπ+1=0e^{i\pi} + 1 = 0

Théorème fondamental de l’analyse :

abf(x)dx=f(b)f(a)\int_a^b f'(x)\, dx = f(b) - f(a)

Développement en série de Taylor :

f(x)=n=0f(n)(a)n!(xa)nf(x) = \sum_{n=0}^{\infty} \frac{f^{(n)}(a)}{n!} (x - a)^n

Une matrice 2×22 \times 2 et son déterminant :

A=(abcd),det(A)=adbcA = \begin{pmatrix} a & b \\ c & d \end{pmatrix},\quad \det(A) = ad - bc

Un système linéaire écrit de façon compacte :

{2x+3y=54xy=1\begin{cases} 2x + 3y = 5 \\ 4x - y = 1 \end{cases}

Densité de probabilité gaussienne :

f(xμ,σ2)=1σ2πe(xμ)22σ2f(x \mid \mu, \sigma^2) = \frac{1}{\sigma \sqrt{2\pi}}\, e^{-\frac{(x-\mu)^2}{2\sigma^2}}

Théorème de Bayes :

P(AB)=P(BA)P(A)P(B)P(A \mid B) = \frac{P(B \mid A)\, P(A)}{P(B)}

Équations de Maxwell en unités SI :

E=ρε0B=0×E=Bt×B=μ0J+μ0ε0Et\begin{aligned} \nabla \cdot \mathbf{E} &= \frac{\rho}{\varepsilon_0} \\ \nabla \cdot \mathbf{B} &= 0 \\ \nabla \times \mathbf{E} &= -\frac{\partial \mathbf{B}}{\partial t} \\ \nabla \times \mathbf{B} &= \mu_0 \mathbf{J} + \mu_0 \varepsilon_0 \frac{\partial \mathbf{E}}{\partial t} \end{aligned}

Équation de Schrödinger dépendante du temps :

itΨ(r,t)=H^Ψ(r,t)i\hbar \frac{\partial}{\partial t} \Psi(\mathbf{r}, t) = \hat{H}\, \Psi(\mathbf{r}, t)

  • Une ligne vide est requise avant et après un bloc $$, sinon Markdown peut absorber les délimiteurs.
  • La même syntaxe fonctionne en .md et en .mdx.
  • En MDX, ne mettez pas { immédiatement après $ sauf intention de faire une expression JSX — échappez avec \{ au besoin.
  • Oubli de math: true ? Vous verrez le texte brut $x^2$ au lieu d’une formule. Ajoutez le drapeau et reconstruisez.

Associez ceci à l’article sur les blocs de code — les deux ensemble couvrent tout ce qu’il faut pour écrire du contenu technique sur ce thème.