¿Qué es el formato de archivo CLS?
Un archivo .cls es un archivo de clase de documento LaTeX: una definición de macro en texto plano que determina la estructura general, el diseño y la tipografía de un documento LaTeX. Cuando abre cualquier fuente .tex que comienza con \documentclass{article} o \documentclass{beamer}, LaTeX busca en su árbol de directorios TEXMF un archivo coincidente llamado article.cls o beamer.cls y lo carga antes de procesar el contenido.
La clase de archivo controla la configuración global del documento: geometría de página, elección de fuentes, jerarquía de secciones, encabezados y pies de página, objetos flotantes y entornos de lista. Dentro de un archivo .cls, las opciones se declaran con \DeclareOption, las dependencias de paquetes con \RequirePackage y la identidad de la clase con \ProvidesClass{classname}[YYYY/MM/DD vX.Y description]. La línea de apertura convencional \NeedsTeXFormat{LaTeX2e} protege contra la carga por parte de un motor TeX incompatible.
Las clases estándar - article, book, report, letter - se incluyen con todas las distribuciones principales de TeX, como TeX Live y MiKTeX. Editoriales como IEEE, ACM, Elsevier, Springer y la AMS distribuyen plantillas .cls personalizadas que los autores deben usar para envíos a revistas o conferencias.
Un archivo .cls difiere de un paquete de estilo (.sty): una clase establece todo el marco del documento, mientras que un archivo de estilo lo complementa. El código fuente de la clase a menudo se distribuye como un archivo literario .dtx con un instalador .ins complementario que extrae el .cls desplegable. Al ser texto plano, los archivos .cls se integran limpiamente en los flujos de trabajo de control de versiones.
Seguridad y protección
RIESGO: LOWArchivo de macros en texto plano; no representa un riesgo ejecutable directo para el sistema operativo. El código LaTeX malicioso es teóricamente posible mediante comandos shell-escape \write18, pero su explotación requiere que la víctima compile un documento .tex con shell-escape habilitado, lo cual no es un vector de ataque realista para archivos .cls distribuidos como plantillas.
Detalles del formato
en pocas palabras- Módulo de clase de Visual Basic / Visual C++ - Definición de clase de código fuente en texto plano generada por el IDE de VB6/VBA/VC++; misma extensión, contenido diferente.
- Archivo de clase Apex (Salesforce) - Archivo de clase del lenguaje Apex orientado a objetos utilizado en el desarrollo de la plataforma Salesforce.
- Archivo de clasificación de color de AutoCAD / ArcGIS - Archivo de esquema de clasificación utilizado por ArcGIS y AutoCAD para configuraciones de rampa de color y geocodificación.
Programas que abren archivos CLS
Detalles técnicos
especificación profunda| Tipo MIME | text/plain; también reconocido como application/x-tex |
| Codificación de caracteres | ASCII o UTF-8; se recomienda ASCII puro para la compatibilidad más amplia con motores TeX |
| Firma binaria | Ninguna - archivo de texto plano sin magic bytes; identificado solo por la extensión y el patrón de contenido |
| Comando de declaración de clase | \ProvidesClass{name}[YYYY/MM/DD vX.Y description] incrusta el nombre de la clase, la fecha y la cadena de versión |
| Protección de compatibilidad de formato | \NeedsTeXFormat{LaTeX2e} como primera línea convencional evita la carga por formatos TeX incompatibles |
| Mecanismo de opciones | Opciones declaradas con \DeclareOption y ejecutadas mediante \ProcessOptions o \ProcessOptions* |
| Carga de dependencias | \RequirePackage{pkgname}[min-date] extrae paquetes .sty con protecciones opcionales de fecha mínima |
| Herencia de clases | \LoadClass{parentclass} permite que una clase extienda a otra, sobrescribiendo solo definiciones seleccionadas |
| Tamaño de archivo típico | 2 KB - 200 KB; desde una clase de esqueleto simple hasta una plantilla completa de editorial de revistas |
| Mecanismo de carga | Invocado por \documentclass[options]{classname} como el primer comando en cualquier documento .tex |
| Ruta de búsqueda de archivos | LaTeX localiza classname.cls a través del árbol TEXMF; kpsewhich classname.cls revela la ruta resuelta |
| Motores TeX compatibles | pdfLaTeX, XeLaTeX, LuaLaTeX y LaTeX clásico (modo DVI); las protecciones específicas del motor usan \ifXeTeX, \ifLuaTeX |
| Clases integradas estándar | article, book, report, letter y slides se incluyen con cada distribución de LaTeX2e |
| Ecosistema de editoriales | IEEE, ACM, Elsevier, Springer y AMS distribuyen plantillas .cls propietarias para envíos a revistas y conferencias |
| Formato de distribución de fuente | La fuente de la clase a menudo se empaqueta como un archivo literario .dtx extraído por un instalador .ins complementario |
| Lanzado | 1985 (LaTeX 2.09); .cls extension standardized with LaTeX2e, June 1994 |
| Última versión | LaTeX2e (current; periodic dated releases, e.g. 2023-06-01) |
| Estándar abierto | Sí · libre de regalías |
| Especificación | www.latex-project.org |
Conversiones de CLS
Preguntas y respuestas de la comunidad
preguntado por usuariosAún no hay preguntas; sea el primero en preguntar sobre los archivos CLS.