更改更改包中已刪除文字的顏色

更改更改包中已刪除文字的顏色

使用changes包,通常刪除的文字顏色為藍色,如何將顏色變更為紅色?

\deleted{30 April 2017}

定義作者

\definechangesauthor[color=orange]{.}

不是我正在尋找的解決方案,因為它也會在更改旁邊列印 id。

答案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。不幸的是,一旦預設(空)作者的套件調用它,用戶[對於空作者]就無法使用更新的密鑰重新調用它,而不彈出錯誤。

然而,人們可以提取\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}}}

相關內容