Hva er CLS-filformatet?
En .cls-fil er en LaTeX-dokumentklassefil - en makrodefinisjon i ren tekst som bestemmer den overordnede strukturen, layouten og typografien til et LaTeX-dokument. Når du åpner en hvilken som helst .tex-kilde som begynner med \documentclass{article} eller \documentclass{beamer}, søker LaTeX i sin TEXMF-katalogstruktur etter en samsvarende fil med navn article.cls eller beamer.cls og laster den før innholdet behandles.
Klassefilen kontrollerer globale dokumentinnstillinger: sidegeometri, fontvalg, seksjonshierarki, topp- og bunntekster, flytelementer og listeomgivelser. Inne i en .cls-fil deklareres alternativer med \DeclareOption, pakkeavhengigheter med \RequirePackage, og klassens identitet med \ProvidesClass{klassenavn}[ÅÅÅÅ/MM/DD vX.Y beskrivelse]. Den konvensjonelle åpningslinjen \NeedsTeXFormat{LaTeX2e} beskytter mot lasting av en inkompatibel TeX-motor.
Standardklasser - article, book, report, letter - følger med alle store TeX-distribusjoner, inkludert TeX Live og MiKTeX. Utgivere som IEEE, ACM, Elsevier, Springer og AMS distribuerer tilpassede .cls-maler som forfattere må bruke for innsending til tidsskrifter eller konferanser.
En .cls-fil skiller seg fra en stilpakke (.sty): en klasse setter hele rammeverket for dokumentet, mens en stilfil supplerer det. Klassekildekode distribueres ofte som en .dtx «literate»-fil med en tilhørende .ins-installatør som pakker ut den brukbare .cls-filen. Siden de er ren tekst, integreres .cls-filer sømløst i arbeidsflyter for versjonskontroll.
Sikkerhet og trygghet
RISIKO: LOWMakrofil i ren tekst; utgjør ingen direkte eksekverbar risiko for operativsystemet. Ondsinnet LaTeX-kode er teoretisk mulig via \write18 shell-escape-kommandoer, men utnyttelse krever at offeret kompilerer et .tex-dokument med shell-escape aktivert - ikke en realistisk angrepsvei for .cls-filer distribuert som maler.
Formatdetaljer
i et nøtteskall- Visual Basic / Visual C++ Klassemodul - Klassedefinisjon i kildekode (ren tekst) generert av VB6/VBA/VC++ IDE; samme utvidelse, annet innhold.
- Apex (Salesforce) Klassefil - Objektorientert Apex-språkklassefil brukt i utvikling på Salesforce-plattformen.
- AutoCAD / ArcGIS Fargeklassifiseringsfil - Klassifiseringsskjemafil brukt av ArcGIS og AutoCAD for fargeoverganger og geokodingsinnstillinger.
Programmer som åpner CLS-filer
Tekniske detaljer
dyp spesifikasjon| MIME-type | text/plain; også gjenkjent som application/x-tex |
| Tegnoding | ASCII eller UTF-8; ren ASCII anbefales for bredest TeX-motorkompatibilitet |
| Binær signatur | Ingen - ren tekstfil uten «magic bytes»; identifiseres kun ved utvidelse og innholdsmønster |
| Klassedeklarasjonskommando | \ProvidesClass{navn}[ÅÅÅÅ/MM/DD vX.Y beskrivelse] bygger inn klassenavn, dato og versjonsstreng |
| Formatkompatibilitetsvakt | \NeedsTeXFormat{LaTeX2e} som konvensjonell første linje forhindrer lasting av inkompatible TeX-formater |
| Alternativmekanisme | Alternativer deklarert med \DeclareOption og utført via \ProcessOptions eller \ProcessOptions* |
| Lasting av avhengigheter | \RequirePackage{pakkenavn}[min-dato] henter inn .sty-pakker med valgfrie vakter for minimumsdato |
| Klassearv | \LoadClass{foreldreklasse} lar en klasse utvide en annen, og overstyrer kun utvalgte definisjoner |
| Typisk filstørrelse | 2 KB - 200 KB; fra enkel skjelettklasse til fullstendig mal fra tidsskriftutgiver |
| Lastemekanisme | Kalles med \documentclass[alternativer]{klassenavn} som den første kommandoen i ethvert .tex-dokument |
| Søkevei for filer | LaTeX finner klassenavn.cls gjennom TEXMF-treet; kpsewhich klassenavn.cls viser den faktiske banen |
| Kompatible TeX-motorer | pdfLaTeX, XeLaTeX, LuaLaTeX og klassisk LaTeX (DVI-modus); motorspesifikke vakter bruker \ifXeTeX, \ifLuaTeX |
| Innebygde standardklasser | article, book, report, letter og slides følger med hver LaTeX2e-distribusjon |
| Utgiverøkosystem | IEEE, ACM, Elsevier, Springer og AMS distribuerer proprietære .cls-maler for innsending til tidsskrifter og konferanser |
| Kildedistribusjonsformat | Klassekilde pakkes ofte som en .dtx-fil som pakkes ut av en tilhørende .ins-installatør |
| Utgitt | 1985 (LaTeX 2.09); .cls extension standardized with LaTeX2e, June 1994 |
| Siste versjon | LaTeX2e (current; periodic dated releases, e.g. 2023-06-01) |
| Åpen standard | Ja · royalty-fri |
| Spesifikasjon | www.latex-project.org |
CLS-konverteringer
Spørsmål og svar fra fellesskapet
spurt av brukereIngen spørsmål ennå - vær den første til å spørre om CLS-filer.