定制 LaTeX-创建文档类或包?

定制 LaTeX-创建文档类或包?

对于何时创建文档类和何时创建包来自定义 LaTeX,是否有通用规则?其中一种方式比另一种方式更有优势吗?

我的具体需求是创建一个自定义的页面布局,但我也对这个问题的一般答案感兴趣。

我花了很多时间寻找这个问题的答案,但令人惊讶的是,我没有找到太多信息。

答案1

也许有人会说包用于扩展可能性,类用于限制可能性

如果您想添加新功能来帮助用户在许多不同类型的文档中创建特定效果,那么这个包非常适合您。

如果您想要设置合理的默认值并创建一个最佳环境,以有效地创建特定类型的文档,而无需进行大量定制,请创建一个类。

当然,还有很多边缘情况 ;-)

答案2

在大多数情况下,最好使用包。包允许其他人将您的包与不同的类结合使用。例如,包geometry可帮助许多不同类的许多用户更改文档的页面几何形状。

在您的情况下,如果您感兴趣的只是更改页面布局,那么使用包可能会更好。

但是,如果您正在开发一个布局,用于反复使用,例如部门报告或论文,则可以考虑使用类。在这种情况下,您不希望用户记住加载包,而是加载特定的类。

答案3

就像 Stephan 写的那样

也许有人会说包是为了扩展可能性,而类是为了限制可能性。

但是现在您需要说明一点:如果您需要很多扩展可能性并且要添加类的限制可能性,也许您需要创建一个类。

我认为如果您需要特定文档,例如“家庭作业笔记本”或Cookie Recipes。创建一个类可能很有趣。在这种情况下,该类仅用于特定格式(布局),并且您不需要像经典类那样提供所有工具。

现在有两种情况。您可以基于另一个类创建一个类(很多人都这样做),也可以从零开始创建一个新类。我这样做是为了创建考试和课程,因为我需要修改很多东西(每件事)

最后说明:如果你创建一个类,这个文档必须非常简单。唯一的目的是给出一个特殊的布局。没有必要用这个文档做每件事。

相关内容