Qu'est-ce que le format de fichier CLS ?
Un fichier .cls est un fichier de classe de document LaTeX - une définition de macro en texte brut qui détermine la structure globale, la mise en page et la typographie d'un document LaTeX. Lorsque vous ouvrez une source .tex qui commence par \documentclass{article} ou \documentclass{beamer}, LaTeX recherche dans son arborescence de répertoires TEXMF un fichier correspondant nommé article.cls ou beamer.cls et le charge avant de traiter le contenu.
Le fichier de classe contrôle les paramètres globaux du document : géométrie de la page, choix des polices, hiérarchie des sections, en-têtes et pieds de page, éléments flottants et environnements de liste. À l'intérieur d'un fichier .cls, les options sont déclarées avec \DeclareOption, les dépendances de paquets avec \RequirePackage, et l'identité de la classe avec \ProvidesClass{classname}[YYYY/MM/DD vX.Y description]. La ligne d'ouverture conventionnelle \NeedsTeXFormat{LaTeX2e} protège contre le chargement par un moteur TeX incompatible.
Les classes standard - article, book, report, letter - sont livrées avec toutes les distributions TeX majeures, y compris TeX Live et MiKTeX. Des éditeurs tels que IEEE, ACM, Elsevier, Springer et l'AMS distribuent des modèles .cls personnalisés que les auteurs doivent utiliser pour les soumissions de revues ou de conférences.
Un fichier .cls diffère d'un paquet de style (.sty) : une classe définit l'ensemble du cadre du document, tandis qu'un fichier de style le complète. Le code source de la classe est souvent distribué sous forme de fichier lettré .dtx avec un installateur compagnon .ins qui extrait le .cls déployable. Étant en texte brut, les fichiers .cls s'intègrent proprement dans les flux de travail de gestion de versions.
Sécurité et sûreté
RISQUE : LOWFichier macro en texte brut ; ne présente aucun risque exécutable direct pour le système d'exploitation. Un code LaTeX malveillant est théoriquement possible via les commandes shell-escape \write18, mais l'exploitation nécessite que la victime compile un document .tex avec shell-escape activé - ce qui n'est pas un vecteur d'attaque réaliste pour les fichiers .cls distribués comme modèles.
Détails du format
en bref- Module de classe Visual Basic / Visual C++ - Définition de classe de code source en texte brut générée par l'IDE VB6/VBA/VC++ ; même extension, contenu différent.
- Fichier de classe Apex (Salesforce) - Fichier de classe du langage Apex orienté objet utilisé dans le développement de la plateforme Salesforce.
- Fichier de classification des couleurs AutoCAD / ArcGIS - Fichier de schéma de classification utilisé par ArcGIS et AutoCAD pour les paramètres de dégradé de couleurs et de géocodage.
Programmes qui ouvrent les fichiers CLS
Détails techniques
spécifications approfondies| Type MIME | text/plain ; également reconnu comme application/x-tex |
| Encodage des caractères | ASCII ou UTF-8 ; ASCII pur recommandé pour la plus large compatibilité avec les moteurs TeX |
| Signature binaire | Aucune - fichier texte brut sans octets magiques ; identifié uniquement par l'extension et le motif du contenu |
| Commande de déclaration de classe | \ProvidesClass{name}[YYYY/MM/DD vX.Y description] intègre le nom de la classe, la date et la chaîne de version |
| Protection de compatibilité de format | \NeedsTeXFormat{LaTeX2e} comme première ligne conventionnelle empêche le chargement par des formats TeX incompatibles |
| Mécanisme d'options | Options déclarées avec \DeclareOption et exécutées via \ProcessOptions ou \ProcessOptions* |
| Chargement des dépendances | \RequirePackage{pkgname}[min-date] appelle des paquets .sty avec des protections optionnelles de date minimale |
| Héritage de classe | \LoadClass{parentclass} permet à une classe d'en étendre une autre, en ne remplaçant que les définitions sélectionnées |
| Taille de fichier typique | 2 Ko - 200 Ko ; de la simple classe squelette au modèle complet d'éditeur de revue |
| Mécanisme de chargement | Invoqué par \documentclass[options]{classname} comme première commande dans tout document .tex |
| Chemin de recherche de fichier | LaTeX localise classname.cls via l'arborescence TEXMF ; kpsewhich classname.cls révèle le chemin résolu |
| Moteurs TeX compatibles | pdfLaTeX, XeLaTeX, LuaLaTeX et LaTeX classique (mode DVI) ; les protections spécifiques au moteur utilisent \ifXeTeX, \ifLuaTeX |
| Classes intégrées standard | article, book, report, letter et slides sont livrés avec chaque distribution LaTeX2e |
| Écosystème des éditeurs | IEEE, ACM, Elsevier, Springer et AMS distribuent des modèles .cls propriétaires pour les soumissions de revues et de conférences |
| Format de distribution source | La source de la classe est souvent packagée sous forme de fichier lettré .dtx extrait par un installateur compagnon .ins |
| Publié | 1985 (LaTeX 2.09); .cls extension standardized with LaTeX2e, June 1994 |
| Dernière version | LaTeX2e (current; periodic dated releases, e.g. 2023-06-01) |
| Standard ouvert | Oui · libre de droits |
| Spécification | www.latex-project.org |
Conversions CLS
Q&R de la communauté
posées par les utilisateursPas encore de questions - soyez le premier à poser une question sur les fichiers CLS.