用 FontAwesome 图标替换枚举中的项目字母

用 FontAwesome 图标替换枚举中的项目字母

问题:

从 LaTex 代码中删除所有与颜色相关的机制,用 FontAwesome 图标替换枚举字母。我已成功显示图标,但似乎无法摆脱代码中的颜色。

最小工作示例(MWE):

\documentclass{scrreprt}

\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[swedish]{babel}
\usepackage{xcolor}
\usepackage{fontawesome}
\usepackage[shortlabels]{enumitem}


\definecolor{editorWhite}{cmyk}{0, 0, 0, 0}
\definecolor{editorBlack}{cmyk}{1, 1, 1, 1}

\begin{document}

\newcommand{\usageitem}[3][black]{%
  \item[%
    \colorbox{#2}{{\makebox[2em]{\strut #3}}}%
  ]
}

\setlist[enumerate,1]{leftmargin=12mm}

\begin{enumerate}[itemsep=6pt,topsep=6pt]
  \usageitem{editorWhite}{\centering \faBook} \textbf{Dictionary} is ...
  \usageitem{editorWhite}{\centering \large \faYoutubePlay} \textbf{Mobile phones} are cool ...
\end{enumerate}

\end{document}

期望输出:

摆脱所有与颜色相关的机制(definecolor、colorbox、black)并保持布局完整。

答案1

您是否期望发生如下情况:

\documentclass{scrreprt}

\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
%\usepackage{fontspec}
\usepackage[swedish]{babel}
\usepackage{fontawesome}
\usepackage[shortlabels]{enumitem}

\begin{document}

\newcommand{\usageitem}[1]{%
  \item[%
    {\makebox[2em]{\strut #1}}%
  ]
}

\setlist[enumerate,1]{leftmargin=12mm}

\begin{enumerate}[itemsep=6pt,topsep=6pt]
  \usageitem{\centering \faBook} \textbf{Dictionary} is ...
  \usageitem{\centering \large \faYoutubePlay} \textbf{Mobile phones} are cool ...
\end{enumerate}

\end{document}

我所做的一切:删除了与 xcolor 相关的命令(注意:使用 lualatex 进行编译)。

答案2

我遵循了@Christian 的建议并提出了这个解决方案,它支持(1)在列表中使用 FontAwesome 图标description(2)根据所用图标的最大宽度将标签中的图标居中,(3)通过选项缩进图标和文本labelindent

非常感谢大家的努力。

最小工作示例:

\documentclass{scrreprt}

\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[swedish]{babel}
\usepackage{xcolor}
\usepackage{fontawesome}
\usepackage[shortlabels]{enumitem}
\usepackage{calc}

\begin{document}

\newlength{\langicons}
\setlength{\langicons}{\widthof{\faEnvelopeO}}
\addtolength{\langicons}{\labelsep}
\SetLabelAlign{CenterWithParen}{\makebox[\langicons]{#1}}

\begin{description}[
            itemsep=1em, 
            topsep=6pt, 
            parsep=0pt, 
            partopsep=0pt, 
            labelwidth=\langicons, 
            itemindent=0cm, 
            leftmargin=!, 
            rightmargin=0cm, 
            align=CenterWithParen, 
            labelindent=0em
]
  \item[\faSearch] \textbf{Search engines} can use ...
  \item[\faLanguage] \textbf{Proofreading} can be ...
  \item[\large \faCommentsO] \textbf{Translation tools} can use ...
\end{description}

\end{document}

相关内容