Latex:重置字体样式

时间:2010-01-12 09:30:10

标签: latex reset listings

有没有办法可以重置某个字符序列的样式? 我正在使用listings包来显示源代码,使用prebreak属性来显示转义字符\以指示当前行已被破坏。问题是,由于使用了语法高亮,有时反斜杠会被着色。

所以我基本上需要类似resetstyle语句的内容,如下面的虚构示例所示:

\textbf{Some bold text \resetstyle{not bold, no color} foo bar}

修改 以下是我通过lstset使用的设置:

\lstset{
        extendedchars           = \true,
        inputencoding           = utf8,
        basicstyle              = \scriptsize\ttfamily,
        breaklines              = true,
        breakindent             = 10pt,
        breakatwhitespace       = true,
        breakautoindent         = true,                         
        prebreak                = \\,
        frame                   = leftline,
        showtabs                = true,                                                                                                    
        numbers                 = left,                                                                                                                                                
        stepnumber              = 2,
        numberstyle             = \footnotesize,
        numbersep               = 10pt,
        keywordstyle            = \color[RGB]{0,0,255},
        commentstyle            = \itshape\color[RGB]{120,120,120},
        stringstyle             = \color[rgb]{0.627,0.126,0.941},
        emphstyle               = {[0]\color[RGB]{236,0,168}},
        emphstyle               = {[1]\color[RGB]{34,139,34}\underbar},
        emphstyle               = {[2]\textbf}
}

2 个答案:

答案 0 :(得分:0)

您可以尝试将文字放在mbox内(未经测试,但适用于数学模式):

\textbf{Some bold text \mbox{not bold, no color} foo bar}

你将失去文本内部换行的能力,但在这种情况下似乎没有问题。

答案 1 :(得分:0)

\def\resetstyle#1{{\normalsize\rm\color[rgb]{0,0,0}\noindent#1}}