ACM论文LaTeX模板解析(三)| 文章顶部信息(Top matter))Part 1

2024-01-16 06:44

本文主要是介绍ACM论文LaTeX模板解析(三)| 文章顶部信息(Top matter))Part 1,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

本文收录于专栏:ACM 论文 LaTeX模板解析,本专栏将会围绕ACM 论文 LaTeX模板解析持续更新。欢迎点赞收藏+关注!

文章目录

有许多命令可以设置文章的顶部信息或(计算机科学术语)元数据。它们建立了出版物名称、文章标题、作者、DOI 和其他数据。其中一些命令,如 \title\author ,应由作者输入。其他命令,如 \acmVolume\acmDOI 由编辑发布。下面我们将介绍这些命令,并提及应由谁发出这些命令。这些宏应该在 \maketitle 命令之前使用。请注意,在以前版本的 ACM 课程中,这些命令有的应该在 \maketitle 之前使用,有的应该在 \maketitle 之后使用。现在它们都必须在 \maketitle 之前使用。

该类内部加载 amsart 类,因此许多顶层物质命令都继承自 amsart 。

  1. \acmJournal\acmJournal{⟨shortName⟩} 为期刊和会议设置期刊或会议的名称。参数是大写的出版物简称。
  2. \acmConference\acmConference[⟨short name⟩]{⟨name⟩}{⟨date⟩}{⟨venue⟩}用于以书籍形式出版的会议录。参数如下:
    • short name:会议名称缩写(可选);
    • name:会议名称;
    • date: 会议日期;
    • venue:会议地点。
  3. \acmBooktitle:默认情况下,我们假定会议论文集出版在名为 Proceedings of CONFERENCE 的书中,其中 CONFERENCE 是根据上述 \acmConference 命令推断出的会议名称。然而,有时书名是不同的。命令 \acmBooktitle 可以用来设置这个标题。

ACM 论文应该有 \acmJournal\acmConference 命令。如果同时有两个(或多个)命令,则以最后一个命令为准。请注意,如果您在期刊格式(如 acmsmall)中使用 \acmConference 命令,那么类将使用会议格式来设置 bibstrip 和参考文献引用格式。

ACM Engage材料不应使用\acmJournal\acmConference命令。它可以使用 \acmBooktitle 来覆盖默认的 ACM EngageCSEdu。它应该使用 \acmYear 来设置材料的日期。

  1. \editor: 大多数情况下,会议论文集都经过编辑。可以使用 \editor{⟨editor⟩} 命令设置卷的编辑者。该命令可以重复使用。
  2. \title:命令 \titleamsart 类一样,有两个参数:一个是可选参数,另一个是必须参数:\title[⟨ShortTitle⟩]{⟨FullTitle⟩}。必选参数是文章的全称。可选参数(如果存在)定义了标题的简短版本,用于运行标题。如果没有可选参数,则使用全标题。一般该命令由稿件作者插入。
  3. \subtitle:除了标题,ACM 类还允许使用 \subtitle{⟨subtitle⟩} 设置副标题。用于指定作者的命令是高度结构化的。这是因为它们具有双重作用:作者信息将在稿件中排版,并被元数据提取工具用于索引和编目。因此,严格遵守指导原则非常重要。
  4. \author\orcid\affiliation\email:作者基本信息,分别为作者名、ORCID号码、隶属单位、邮箱。

不要使用 LATEX \and 命令或逗号,也不要在作者之间使用 \\。每个作者都应该有自己的 \author 命令。如果试图在一条命令中列出多个作者或他们的电子邮件,会导致警告或错误。这不是错误,而是预期行为。

请注意,有些格式不排版电子邮件或 ORCID 标识符。不用担心:元数据工具会获取它们。ACM 强烈建议您在编译或提交审核或制作处理之前,将所有作者的 ORCID 纳入其中。

有时,一位作者有多个隶属关系。在这种情况下,应重复 \affiliation 命令。同样,您也可以重复 \email 命令。

您可能会有几位作者具有相同的隶属关系、不同的隶属关系或重叠的隶属关系(作者 A1 隶属于机构 I1 和 I2,而作者 A2 仅隶属于机构 I2,作者 A3 隶属于机构 I1 和机构 I3,等等)。建议解决办法是在每个作者后面加上 \affiliation 命令,也可以重复这些命令。

在某些情况下,如果几位作者的单位相同,您可以尝试使用以下格式来节省空间(不过,一般不建议使用这种格式):

\author{...} 
\email{...} 
\author{...} 
\email{...} 
\affiliation{...}
  1. \additionalaffiliation: 在某些情况下,过多的隶属关系会占用过多的空间。\additionalaffiliation{⟨affiliation⟩} 命令会在作者姓名后创建一个脚注,注明 “Also with {⟨affiliation⟩}”。只有在万不得已的情况下才使用该命令。
  2. \position \institution \department \streetaddress \city \state \postcode \country\affiliation(所属单位)和\additionalaffiliation(附加所属单位)命令被进一步结构化为\position(职位)\institution(机构)\department(部门)\streetaddress(街道地址)\city(城市)\state(州)\postcode(邮编)\country(国家),以便与元数据提取工具进行交互。请注意,在某些情况下(例如期刊),这些部分不会打印在生成的副本中,但它们是必要的,因为 XML 元数据提取程序会用到它们。\affiliation(隶属关系)元素之间不要使用逗号或\\。它们将自动提供。\institution\city\country是必填字段。如果没有提供这些字段,就会出错或发出警告。目前,如果没有填写 (\country),就会产生错误;ACM 今后可能会改变这一规定。

需要注意的是,旧的 ACM 会议格式不允许超过六位作者,需要作者付出一定的努力才能达到一致。新格式在这方面要好得多。

有时,一位作者在同一机构的多个部门工作。这可能有两种情况:部门是独立的,或者一个部门在另一个部门内。在第一种情况下,只需多次重复 \department 命令即可。为了处理第二种情况,该命令有一个可选的数字参数。数字越大的部门在组织结构图中的位置越靠前。

\affiliation 命令的输出格式是按照美式习惯设置的。这在某些情况下可能是错误的。例如,考虑一个德国地址。在德国,邮编被放在城市之前,而且不用逗号分隔。

这篇关于ACM论文LaTeX模板解析(三)| 文章顶部信息(Top matter))Part 1的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/611632

相关文章

Java中Redisson 的原理深度解析

《Java中Redisson的原理深度解析》Redisson是一个高性能的Redis客户端,它通过将Redis数据结构映射为Java对象和分布式对象,实现了在Java应用中方便地使用Redis,本文... 目录前言一、核心设计理念二、核心架构与通信层1. 基于 Netty 的异步非阻塞通信2. 编解码器三、

一篇文章彻底搞懂macOS如何决定java环境

《一篇文章彻底搞懂macOS如何决定java环境》MacOS作为一个功能强大的操作系统,为开发者提供了丰富的开发工具和框架,下面:本文主要介绍macOS如何决定java环境的相关资料,文中通过代码... 目录方法一:使用 which命令方法二:使用 Java_home工具(Apple 官方推荐)那问题来了,

Java HashMap的底层实现原理深度解析

《JavaHashMap的底层实现原理深度解析》HashMap基于数组+链表+红黑树结构,通过哈希算法和扩容机制优化性能,负载因子与树化阈值平衡效率,是Java开发必备的高效数据结构,本文给大家介绍... 目录一、概述:HashMap的宏观结构二、核心数据结构解析1. 数组(桶数组)2. 链表节点(Node

Java 虚拟线程的创建与使用深度解析

《Java虚拟线程的创建与使用深度解析》虚拟线程是Java19中以预览特性形式引入,Java21起正式发布的轻量级线程,本文给大家介绍Java虚拟线程的创建与使用,感兴趣的朋友一起看看吧... 目录一、虚拟线程简介1.1 什么是虚拟线程?1.2 为什么需要虚拟线程?二、虚拟线程与平台线程对比代码对比示例:三

一文解析C#中的StringSplitOptions枚举

《一文解析C#中的StringSplitOptions枚举》StringSplitOptions是C#中的一个枚举类型,用于控制string.Split()方法分割字符串时的行为,核心作用是处理分割后... 目录C#的StringSplitOptions枚举1.StringSplitOptions枚举的常用

Python函数作用域与闭包举例深度解析

《Python函数作用域与闭包举例深度解析》Python函数的作用域规则和闭包是编程中的关键概念,它们决定了变量的访问和生命周期,:本文主要介绍Python函数作用域与闭包的相关资料,文中通过代码... 目录1. 基础作用域访问示例1:访问全局变量示例2:访问外层函数变量2. 闭包基础示例3:简单闭包示例4

MyBatis延迟加载与多级缓存全解析

《MyBatis延迟加载与多级缓存全解析》文章介绍MyBatis的延迟加载与多级缓存机制,延迟加载按需加载关联数据提升性能,一级缓存会话级默认开启,二级缓存工厂级支持跨会话共享,增删改操作会清空对应缓... 目录MyBATis延迟加载策略一对多示例一对多示例MyBatis框架的缓存一级缓存二级缓存MyBat

前端缓存策略的自解方案全解析

《前端缓存策略的自解方案全解析》缓存从来都是前端的一个痛点,很多前端搞不清楚缓存到底是何物,:本文主要介绍前端缓存的自解方案,文中通过代码介绍的非常详细,需要的朋友可以参考下... 目录一、为什么“清缓存”成了技术圈的梗二、先给缓存“把个脉”:浏览器到底缓存了谁?三、设计思路:把“发版”做成“自愈”四、代码

Java集合之Iterator迭代器实现代码解析

《Java集合之Iterator迭代器实现代码解析》迭代器Iterator是Java集合框架中的一个核心接口,位于java.util包下,它定义了一种标准的元素访问机制,为各种集合类型提供了一种统一的... 目录一、什么是Iterator二、Iterator的核心方法三、基本使用示例四、Iterator的工

使用Java填充Word模板的操作指南

《使用Java填充Word模板的操作指南》本文介绍了Java填充Word模板的实现方法,包括文本、列表和复选框的填充,首先通过Word域功能设置模板变量,然后使用poi-tl、aspose-words... 目录前言一、设置word模板普通字段列表字段复选框二、代码1. 引入POM2. 模板放入项目3.代码