部分标志用斜体表示吗?

部分标志用斜体表示吗?

在 LaTeX 中如何使 § 以斜体显示?

\textit{WGG \S\ 1 Allgemeines} 

打印结果应该像这样:

WGG § 1 一般

但 LaTeX 却给了我这个:

世界卫生组织§1 一般

关于如何解决这个问题有什么想法吗?

答案1

使用 T1 而不是 OT1 字体编码:

\documentclass{article}
\usepackage[T1]{fontenc}
\begin{document}
  \S 1 \textit{\S 1}
\end{document}

在这种情况下,符号取自与常规文本相同的字体(无论当前字体是什么 - 直立、斜体等),而不是取自不同的符号字体。这是因为与 OT1 不同,T1 有 256 个而不是 128 个插槽,因此有足够的空间容纳这些奢侈品。由于只有 128 个插槽,因此额外的内容会从单独的字体中提取出来,因此不一定与周围文本的样式相匹配。

T1

答案2

如果不喜欢 T1 编码,并且使用 pdflatex,另一个选择是使用 Bruno 的\slantbox剪切变换一个“盒子”)。

\documentclass{article}
\newsavebox\foobox
\newcommand{\slantbox}[2][.2]{\mbox{%
        \sbox{\foobox}{#2}%
        \hskip\wd\foobox
        \pdfsave
        \pdfsetmatrix{1 0 #1 1}%
        \llap{\usebox{\foobox}}%
        \pdfrestore
}}
\begin{document}
Here is the section sign, \S,\\ and here it is slanted: \slantbox{\S}.
\end{document}

在此处输入图片描述

附录

原作者在评论中指出了不希望符号在目录中倾斜的问题。这给人的印象是该符号正在用于章节名称。它可以轻松地按如下方式排列,在目录中不倾斜,在章节标题中倾斜。

如果仅出现一次或两次,则\section可以使用可选参数:

\documentclass{article}
\newsavebox\foobox
\newcommand{\slantbox}[2][.2]{\mbox{%
        \sbox{\foobox}{#2}%
        \hskip\wd\foobox
        \pdfsave
        \pdfsetmatrix{1 0 #1 1}%
        \llap{\usebox{\foobox}}%
        \pdfrestore
}}
\begin{document}
\tableofcontents

\noindent\hrulefill

\section[Here is a section symbol \S]{Here is a section symbol \slantbox{\S}}
\end{document}

如果它是经常出现的符号,这种重新定义的方法就足够了。

\documentclass{article}
\newsavebox\foobox
\newcommand{\slantbox}[2][.2]{\mbox{%
        \sbox{\foobox}{#2}%
        \hskip\wd\foobox
        \pdfsave
        \pdfsetmatrix{1 0 #1 1}%
        \llap{\usebox{\foobox}}%
        \pdfrestore
}}
\newcommand\slanted[2][]{#2}
\begin{document}
\tableofcontents
\renewcommand\slanted[2][.2]{\slantbox[#1]{#2}}

\noindent\hrulefill

\section{Here is a section symbol \slanted{\S}}
\end{document}

相关内容