\compare{vs-reportlab}
ReportLab construit des PDF en plaçant des objets à des coordonnées exactes. FormaTeX laisse TeX gérer la mise en page automatiquement — vous décrivez votre document au lieu de le micro-gérer.
ReportLab est une bibliothèque Python de génération de PDF par programmation. Vous construisez vos documents en plaçant des cadres de texte, des tableaux et des graphiques à des coordonnées x/y explicites sur un canevas — un modèle hérité de PostScript. Son édition commerciale, ReportLab PLUS, ajoute des composants platypus flottants pour réduire le positionnement manuel.
ReportLab n'a pas de composition mathématique, et construire un tableau à la typographie professionnelle exige des largeurs de colonnes, des marges internes et des styles de lignes soigneusement ajustés dans le code Python.
FormaTeX est une API de compilation LaTeX. Vous écrivez un fichier .tex qui décrit la structure de votre document — sections, mathématiques, tableaux — et TeX gère automatiquement toute la mise en page. Vous envoyez la source à l'API et recevez en quelques secondes un PDF de qualité publication.
Les plus de 6 000 packages de CTAN couvrent tout, des schémas de chimie à la notation musicale. Aucun calcul de coordonnées nécessaire.
\section{Comparaison des fonctionnalités}
Une comparaison détaillée de la qualité de sortie, de la prise en charge des mathématiques, des tableaux et de la richesse de l'écosystème.
| Fonctionnalité | FormaTeX | ReportLab |
|---|---|---|
| Qualité de sortie | Composition TeX | Mise en page programmatique |
| Prise en charge des mathématiques | Oui | Non |
| Tableaux complexes | Oui | Coordonnées manuelles |
| Réutilisation des modèles | .tex template files | Héritage de classes Python |
| REST API | Oui | Non |
| Écosystème de packages | CTAN (plus de 6 000 packages) | Extensions PyPI |
| Qualité typographique | Professionnelle (crénage TeX) | Basique |
| Courbe d'apprentissage | Syntaxe LaTeX | API Python |
\section{Comparaison de code}
Un rapport trimestriel avec un titre, une formule mathématique et un tableau de données — écrit dans ReportLab et dans FormaTeX, côte à côte.
from reportlab.lib.pagesizes import letter
from reportlab.platypus import SimpleDocTemplate, Paragraph, Table
from reportlab.lib.styles import getSampleStyleSheet
doc = SimpleDocTemplate("report.pdf", pagesize=letter)
styles = getSampleStyleSheet()
# Manual coordinate-based table layout
data = [["Metric", "Q1", "Q2"], ["Revenue", "$1.2M", "$1.4M"]]
table = Table(data, colWidths=[200, 100, 100])
story = [
Paragraph("Quarterly Report", styles["Heading1"]),
Paragraph(
"Revenue grew 12% year-over-year.",
styles["BodyText"],
),
table,
]
doc.build(story)import requests
LATEX = r"""
\documentclass{article}
\usepackage{amsmath, booktabs}
\begin{document}
\section*{Quarterly Report}
Revenue grew by 12\% year-over-year:
\[
\text{Growth} = \frac{Q_2 - Q_1}{Q_1} \approx 12\%
\]
\begin{tabular}{lrr}
\toprule
Metric & Q1 & Q2 \\
\midrule
Revenue & \$1.2M & \$1.4M \\
\bottomrule
\end{tabular}
\end{document}
"""
response = requests.post(
"https://api.formatex.io/api/v1/compile",
headers={
"X-API-Key": "YOUR_API_KEY",
"Content-Type": "application/json",
},
json={"latex": LATEX, "engine": "pdflatex"},
)
with open("report.pdf", "wb") as f:
f.write(response.content)Essayer la version FormaTeX en direct
Ouvrez le playground avec le document déjà chargé — compilez-le en un clic.
\section{Développeurs Python}
Pas de configuration de canevas ReportLab, pas de câblage de flowables, pas de code répétitif platypus. Envoyez votre source LaTeX et écrivez la réponse dans un fichier. L'API s'occupe du reste.
ReportLab ne gère pas nativement les mathématiques. Afficher des équations passe par des contournements peu élégants, comme des images PNG pré-rendues. FormaTeX utilise le même moteur mathématique TeX que Nature et arXiv.
Un modèle FormaTeX est un simple fichier .tex que vous versionnez avec votre code Python. Changez un fichier de classe et chaque document généré hérite du nouveau design — sans refonte de sous-classes Python.
\end{vs-reportlab}
Inscrivez-vous gratuitement — aucune carte bancaire requise. Compilez votre premier PDF LaTeX depuis Python en moins de cinq minutes.