Изменить цвет удаленного текста в пакете изменений

Изменить цвет удаленного текста в пакете изменений

При использовании пакета изменений обычно удаленный текст окрашивается в синий цвет. Как изменить цвет на красный?

\deleted{30 April 2017}

Определение автора с помощью

\definechangesauthor[color=orange]{.}

это не то решение, которое я ищу, так как оно также печатает идентификатор рядом с изменением.

решение1

Быстрый хак:

\documentclass{article}

\usepackage{xcolor}
\definecolor{blue}{rgb}{1.,0,0}
\usepackage{changes}
\definecolor{blue}{rgb}{0,0,1.}

\begin{document}

\deleted{30 April 2017}

\textcolor{blue}{text}

\end{document}

[При написании этого ответа ни одна кошка не пострадала :) ]

решение2

Я перешел к файлу sty, чтобы посмотреть, где было сделано изменение, и переделал его в противном случае. Все изменения происходят внутри вызова макроса \definechangesauthor. К сожалению, после вызова пакетом для автора по умолчанию (null) он не может быть повторно вызван пользователем [для автора null] с обновленными ключами без появления ошибки.

Однако можно вытащить те компоненты макроса \definechangesauthor, где цвет фактически вступает в силу, и переделать только эти биты. В MWE ниже, код внутри — \makeatletter...\makeatotherэто то, где эти цветовые величины сбрасываются. Я выковал его в макрос\resetchangescolor{<color>}

\documentclass{elsarticle}
\usepackage{changes}

\makeatletter
\newcommand\resetchangescolor[1]{%
  \setkeys{Changes@definechangesauthor}{color=#1}%
  \expandafter%
  \let\csname Changes@AuthorColor\endcsname=\Changes@definechangesauthor@color%
  \colorlet{Changes@Color}{\@nameuse{Changes@AuthorColor}}%
}
\makeatother
\begin{document}
\resetchangescolor{cyan}I eat \added{an} apple.
\resetchangescolor{red}I buy \deleted{a} books.
I buy \replaced{nice}{bad} car.

\listofchanges[style=<list|summary>]
\end{document}

введите описание изображения здесь

решение3

Это сработало для меня. Не устанавливайте ничего длядобавленесли вы хотите, чтобы цвет по умолчанию оставался синим, но вы можете изменитьудалено. Добавьте команду в ваш основной файл.

\setdeletedmarkup{\sout{\textcolor{red}{#1}}}

Связанный контент