Hvad er CLS-filformatet?
En .cls-fil er en LaTeX-dokumentklassefil - en almindelig tekstmakrodefinition, der bestemmer den overordnede struktur, layout og typografi for et LaTeX-dokument. Når du åbner en .tex-kilde, der begynder med \documentclass{article} eller \documentclass{beamer}, søger LaTeX i sit TEXMF-bibliotekstræ efter en matchende fil ved navn article.cls eller beamer.cls og indlæser den, før indholdet behandles.
Klassefilen styrer globale dokumentindstillinger: sidegeometri, valg af skrifttyper, sektionshierarki, sidehoveder og sidefødder, floats og listeomgivelser. Inde i en .cls-fil erklæres indstillinger med \DeclareOption, pakkeafhængigheder med \RequirePackage og klasseidentiteten med \ProvidesClass{klassenavn}[ÅÅÅÅ/MM/DD vX.Y beskrivelse]. Den konventionelle startlinje \NeedsTeXFormat{LaTeX2e} sikrer mod indlæsning af en ikkekompatibel TeX-motor.
Standardklasser - article, book, report, letter - følger med alle større TeX-distributioner, herunder TeX Live og MiKTeX. Udgivere som IEEE, ACM, Elsevier, Springer og AMS distribuerer brugerdefinerede .cls-skabeloner, som forfattere skal bruge til tidsskrifts- eller konferenceindsendelser.
En .cls-fil adskiller sig fra en stilpakke (.sty): en klasse fastlægger hele dokumentrammen, mens en stilfil supplerer den. Klassekildekode distribueres ofte som en .dtx «literate»-fil med en tilhørende .ins-installationsfil, der udpakker den brugbare .cls. Da de er almindelig tekst, integreres .cls-filer problemfrit i versionsstyrings-workflows.
Sikkerhed og tryghed
RISIKO: LOWAlmindelig tekstmakrofil; udgør ingen direkte eksekverbar risiko for operativsystemet. Ondsindet LaTeX-kode er teoretisk muligt via \write18 shell-escape-kommandoer, men udnyttelse kræver, at offeret compilerer et .tex-dokument med shell-escape aktiveret - hvilket ikke er en realistisk angrebsvektor for .cls-filer distribueret som skabeloner.
Formatdetaljer
kort fortalt- Visual Basic / Visual C++ Klassemodul - Klassedefinition i almindelig tekstkildekode genereret af VB6/VBA/VC++ IDE; samme filendelse, andet indhold.
- Apex (Salesforce) Klassefil - Objektorienteret Apex-sprogklassefil brugt i Salesforce-platformudvikling.
- AutoCAD / ArcGIS Farveklassifikationsfil - Klassifikationsskemafil brugt af ArcGIS og AutoCAD til farveovergange og geokodningsindstillinger.
Programmer der åbner CLS-filer
Tekniske detaljer
dyb specifikation| MIME-type | text/plain; genkendes også som application/x-tex |
| Tegnkodning | ASCII eller UTF-8; ren ASCII anbefales for bredest mulige TeX-motorkompatibilitet |
| Binær signatur | Ingen - almindelig tekstfil uden magic bytes; identificeres kun via filendelse og indholdsmønster |
| Klasseerklæringskommando | \ProvidesClass{navn}[ÅÅÅÅ/MM/DD vX.Y beskrivelse] indlejrer klassenavn, dato og versionsstreng |
| Formatkompatibilitetssikring | \NeedsTeXFormat{LaTeX2e} som konventionel første linje forhindrer indlæsning af ikkekompatible TeX-formater |
| Indstillingsmekanisme | Indstillinger erklæres med \DeclareOption og eksekveres via \ProcessOptions eller \ProcessOptions* |
| Indlæsning af afhængigheder | \RequirePackage{pakkenavn}[min-dato] henter .sty-pakker med valgfri minimumsdato-sikring |
| Klassearv | \LoadClass{forældreklasse} gør det muligt for en klasse at udvide en anden og kun tilsidesætte valgte definitioner |
| Typisk filstørrelse | 2 KB - 200 KB; fra simpel skeletklasse til fuld udgiverskabelon |
| Indlæsningsmekanisme | Aktiveres af \documentclass[indstillinger]{klassenavn} som den første kommando i ethvert .tex-dokument |
| Filsøgesti | LaTeX lokaliserer klassenavn.cls gennem TEXMF-træet; kpsewhich klassenavn.cls viser den fundne sti |
| Kompatible TeX-motorer | pdfLaTeX, XeLaTeX, LuaLaTeX og klassisk LaTeX (DVI-tilstand); motorspecifikke sikringer bruger \ifXeTeX, \ifLuaTeX |
| Indbyggede standardklasser | article, book, report, letter og slides følger med enhver LaTeX2e-distribution |
| Udgiverøkosystem | IEEE, ACM, Elsevier, Springer og AMS distribuerer proprietære .cls-skabeloner til tidsskrifts- og konferenceindsendelser |
| Kildedistributionsformat | Klassekilde pakkes ofte som en .dtx «literate»-fil, der udpakkes af en tilhørende .ins-installationsfil |
| Udgivet | 1985 (LaTeX 2.09); .cls extension standardized with LaTeX2e, June 1994 |
| Seneste version | LaTeX2e (current; periodic dated releases, e.g. 2023-06-01) |
| Åben standard | Ja · royaltyfri |
| Specifikation | www.latex-project.org |
CLS-konverteringer
Fællesskabets Q&A
spurgt af brugereIngen spørgsmål endnu - vær den første til at spørge om CLS-filer.