LaTeX beamer: way to change the bullet indentation?
我已经检查了Beamer Class手册(PDF文件)。
我不知道如何更改分配给\ itemize的缩进项目符号。
[这很重要,因为我正在使用2列幻灯片,并且我不希望投影仪占用太多的水平空间]。
Beamer只是将管理
由于Beamer重新定义了itemize,item等,因此操作缩进之类的完全正确方法是重新定义Beamer模板。我得到的印象是您不希望走那么远,但是如果不是这样,请告诉我,我会详细说明。
至少有三种方法可以在文档中实现目标,而不会迷惑Beamer模板。
使用
在以下代码段中,您可以将
此方法的优点是列表的样式正常。缺点是Beamer对
1 2 3 4 |
使用
在下面的代码片段中,
这种方法的优点是您具有非Beamer LaTeX中列表的所有灵活性。缺点是您必须手动设置项目符号样式(和其他视觉元素)(或为所使用的模板标识正确的命令)。请注意,如果将第二个参数保留为空,则不会显示任何项目符号,并且可以节省一些水平空间。
1 2 3 | \\begin{list}{$\\square$}{\\leftmargin=1em \\itemindent=0em} \\item This item uses the margin and indentation provided above. \\end{list} |
定义
可以通过定义一个新的
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 | \\makeatletter \ ewenvironment{customlist}[2]{ \\ifnum\\@itemdepth >2\ elax\\@toodeep\\else \\advance\\@itemdepth\\@ne% \\beamer@computepref\\@itemdepth% \\usebeamerfont{itemize/enumerate \\beameritemnestingprefix body}% \\usebeamercolor[fg]{itemize/enumerate \\beameritemnestingprefix body}% \\usebeamertemplate{itemize/enumerate \\beameritemnestingprefix body begin}% \\begin{list} { \\usebeamertemplate{itemize \\beameritemnestingprefix item} } { \\leftmargin=#1 \\itemindent=#2 \\def\\makelabel##1{% {% \\hss\\llap{{% \\usebeamerfont*{itemize \\beameritemnestingprefix item}% \\usebeamercolor[fg]{itemize \\beameritemnestingprefix item}##1}}% }% }% } \\fi } { \\end{list} \\usebeamertemplate{itemize/enumerate \\beameritemnestingprefix body end}% } \\makeatother |
现在,要使用带有自定义缩进的逐项列表,可以使用以下环境。第一个参数用于
1 2 3 |
可以使用
另外,也可以直接在环境中修改项目符号样式,方法是将
我使用包裹enumitem。然后,您可以在声明列表(枚举,描述,逐项列出)时设置以下边距:
当然,该软件包还为列表提供了许多其他不错的自定义设置(使用'label ='更改项目符号,使用'itemsep ='更改项目之间的间距,等等。)
为新的逐项环境设置
1 2 3 4 5 6 7 8 |