Tachar texto en color mediante comandos definidos por el usuario

Tachar texto en color mediante comandos definidos por el usuario

He estado intentando tachar un texto coloreado definido por una macro, pero parece que no admite saltos de línea. Tengo un comando bt para escribir texto azul y quiero tachar parte del texto con un trazo rojo (comando rs). A continuación se muestra un MCVE de mi problema.

\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}

Este código produce el siguiente resultado. Tacha el texto con un trazo rojo, sin embargo, esto destruye el salto de línea de mi párrafo. ejemplo

También probé el soulpaquete y usé elexpandafter truco (de esteenlace), pero no funcionó para mí.

Respuesta1

Con soulno hay problemas.

\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}

ingrese la descripción de la imagen aquí

información relacionada