![更改变更包中已删除文本的颜色](https://linux22.com/image/353728/%E6%9B%B4%E6%94%B9%E5%8F%98%E6%9B%B4%E5%8C%85%E4%B8%AD%E5%B7%B2%E5%88%A0%E9%99%A4%E6%96%87%E6%9C%AC%E7%9A%84%E9%A2%9C%E8%89%B2.png)
使用更改包,通常删除的文本会显示为蓝色,我怎样才能将颜色更改为红色?
\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}}}