Durchstreichen von farbigem Text durch benutzerdefinierte Befehle

Durchstreichen von farbigem Text durch benutzerdefinierte Befehle

Ich habe versucht, einen farbigen Text durchzustreichen, der durch ein Makro definiert wurde, aber es scheint, dass es keinen Zeilenumbruch unterstützt. Ich habe den Befehl bt, um blauen Text einzugeben, und ich möchte einen Teil des Textes mit einem roten Strich durchstreichen (Befehl rs). Nachfolgend finden Sie eine MCVE meines Problems.

\documentclass{article}
\usepackage{ulem,xcolor}

\newcommand{\bt}[1]{\textcolor{blue}{#1}} % bt: blue text
\newcommand{\rt}[1]{\textcolor{red}{#1}}  % rt: red text
\newcommand{\rs}[1]{\rt{\sout{#1}}}       % rs: red stroke

\textwidth=12cm % Forcing linebreak at 12cm

\usepackage[T1]{fontenc}
\begin{document}
    \bt{Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin
            sodales massa ac dapibus dignissim. Phasellus ac pretium urna. 
            Mauris tincidunt molestie sapien vel mattis. Vestibulum aculis 
            tincidunt posuere. In interdum blandit diam, id tempus elit ullamcorper iaculis.}

    \rs{Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin
            sodales massa ac dapibus dignissim. Phasellus ac pretium urna. 
            Mauris tincidunt molestie sapien vel mattis. Vestibulum aculis 
            tincidunt posuere. In interdum blandit diam, id tempus elit ullamcorper iaculis.}

    \rs{\bt{Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin
            sodales massa ac dapibus dignissim. Phasellus ac pretium urna. 
            Mauris tincidunt molestie sapien vel mattis. Vestibulum aculis 
            tincidunt posuere. In interdum blandit diam, id tempus elit ullamcorper iaculis.}}     
\end{document}

Dieser Code erzeugt die folgende Ausgabe. Er streicht den Text zwar mit einem roten Strich durch, zerstört dadurch jedoch den Zeilenumbruch meines Absatzes. Beispiel

Ich habe auch das soulPaket ausprobiert und den expandafterTrick verwendet (von diesemVerknüpfung), aber bei mir hat es nicht funktioniert.

Antwort1

Mit soulgibt es keine Probleme.

\documentclass{article}
\usepackage{soul,xcolor}

\newcommand{\bt}[1]{\textcolor{blue}{#1}} % bt: blue text
\newcommand{\rt}[1]{\textcolor{red}{#1}} % rt: red text
\newcommand{\rs}[1]{\setstcolor{red}\st{#1}}       % rs: red stroke

\textwidth=12cm % Forcing linebreak at 12cm

\usepackage[T1]{fontenc}
\begin{document}
    \bt{Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin
            sodales massa ac dapibus dignissim. Phasellus ac pretium urna. 
            Mauris tincidunt molestie sapien vel mattis. Vestibulum aculis 
            tincidunt posuere. In interdum blandit diam, id tempus elit ullamcorper iaculis.}

    \rs{Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin
            sodales massa ac dapibus dignissim. Phasellus ac pretium urna. 
            Mauris tincidunt molestie sapien vel mattis. Vestibulum aculis 
            tincidunt posuere. In interdum blandit diam, id tempus elit ullamcorper iaculis.}

    \textcolor{blue}{\rs{Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin
            sodales massa ac dapibus dignissim. Phasellus ac pretium urna. 
            Mauris tincidunt molestie sapien vel mattis. Vestibulum aculis 
            tincidunt posuere. In interdum blandit diam, id tempus elit ullamcorper iaculis.}}     
\end{document}

Bildbeschreibung hier eingeben

verwandte Informationen