代码发出此警告:
Package xcolor Warning: Incompatible color definition on input line 97.
此数学工作表中颜色以 3 种方式使用:
- 画出黄色高亮框来包含最终答案
前任:\colorbox{yellow}{$x=\dfrac{\log{34}}
- 将颜色应用于某些指数和对数底数
前任:$\textcolor{red}{\cancel{log_4}}(5x+15)=\textcolor{red}{\cancel{log_4}}(35)$
- 使用 tikz,绘制蓝色箭头指示过渡到解决方案程序的下一步。
例如:$5^{x-3}=35 \tikz[baseline=-0.65ex]\draw[arr] (0,0) -- ++ (1,0); \log 5^{x-3} = \log 35$
(h/t@zarko)
在搜索了几篇 tex.stack 帖子后,我尝试usepackage{xcolor}
在 之前立即插入\usepackage{tikz}
。此编辑未能删除警告消息。
非常感谢您为解决此问题所提供的帮助!
供参考:使用考试类,因为它提供 printanswers
和%printanswers
(即不打印答案)命令。
姆韦
\documentclass[12pt]{exam}
\usepackage[a4paper,margin=0.5in,include head]{geometry}
\printanswers
% un-comment to print solutions.
\renewcommand{\solutiontitle}{}
\usepackage{amsmath}
\usepackage{cancel}
\usepackage{framed}
\usepackage{bm}
\usepackage{multicol}
\usepackage[nice]{nicefrac}
\usepackage{tasks}
\usepackage{tikz}
\usetikzlibrary{arrows.meta}
\tikzset{arr/.style = {blue,-{Triangle[angle=60:1pt 3]}, thick,
shorten <=2mm, shorten >=2mm}
}
\pagestyle{head}
\header{\textbf{ Algebra II: TEST 4 REVIEW (Unit 14: Logarithms)}}
{}
{}
\newcommand{\pagetop}{%
}
\newlength{\lwidth}% added <<<<<
\settowidth{\lwidth}{(99)\enspace} % added
\settasks{after-item-skip=1em,
after-skip=2cm,
label-width=\lwidth, % changed <<<<<<<<<
item-indent=0pt, % changed <<<<<<<<<<
%label-format = \bfseries,
%add \bf to make numbers bold <<<<<<<<<<
label=(\arabic*), %
label-offset = -\lwidth,% added <<<<<
item-format = \hspace{\lwidth},% added <<<<<
column-sep=2em, % changed <<<<<<<<<
}
\makeatletter
\renewcommand{\fullwidth}[1]{%
\vbox{%
\leftskip=-\lwidth \rightskip=0pt
\advance\linewidth\@totalleftmargin%
\@totalleftmargin=0pt%
#1}%
\nobreak
}
\makeatother
\newlength{\SolutionSpace}
\ifthenelse{\boolean{printanswers}}
{\setlength{\SolutionSpace}{5cm}
\colorsolutionboxes
\definecolor{SolutionBoxColor}{gray}{0.8}}% solutions are printed
{\setlength{\SolutionSpace}{0cm}
\colorsolutionboxes
\definecolor{SolutionBoxColor}{gray}{1}}% solutions are not being printed
%*********************************************
\begin{document}
%definition for bigskip = 1 line to replace all \bigskip
\def\bigskip{\vskip\bigskipamount}
\begin{tasks}
[style=enumerate](2)
\task![]\fullwidth{\textbf{Solve for $x$. If necessary, round answers to 2 decimal places.}}
%%% Prob #1
\task
$2 \bm{\cdot}5^{x-3}-7=61$
\begin{solutionorbox}[\SolutionSpace]
$2 \bm{\cdot}5^{x-3}=68$\bigskip
$\dfrac{\cancel{2}\bm{\cdot}5^{x-3}}{\cancel{2}} =\dfrac{68}{2}$\bigskip
$5^{x-3}=35 \tikz[baseline=-0.65ex]\draw[arr] (0,0) -- ++ (1,0);
\log 5^{x-3} = \log 35$\bigskip
$(x-3)\log5=\log{34}$\bigskip
$\dfrac{(x-3)\cancel{\log5}}{\cancel{\log5}}=\dfrac{\log{34}}{\log5}$\bigskip
$x-3=\dfrac{\log{34}}{\log5}$\hphantom{(}\hphantom{(}\hphantom{(}
\colorbox{yellow}{$x=\dfrac{\log{34}}{\log5}+3\approx5.19$}
\end{solutionorbox}
%%% Prob #2
\task
$\log_4(x+3)+\log_45=\log_4{35}$
\vspace{.25cm}
\begin{solutionorbox}[\SolutionSpace]
$\log_4(x+3)(5)=\log_4(35)$\bigskip
$\textcolor{red}{\cancel{log_4}}(5x+15)=\textcolor{red}{\cancel{log_4}}(35)$\bigskip
$5x+15=35$\bigskip
$5x=20$\hphantom{(}\hphantom{(}\hphantom{(}
\colorbox{yellow}{$x=4$}
\end{solutionorbox}
%%% Prob #3
\task
$\log_4(3x+4)=3$\vspace{.25cm}
\begin{solutionorbox}[\SolutionSpace]
Hint: If $\log_{\textcolor{red}{a}}N=\textcolor{blue}{x}$, then $\textcolor{red}{a}^{\textcolor{blue}{x}}=N$.\bigskip
$4^3=3x+4 \tikz[baseline=-0.65ex]\draw[arr] (0,0) -- ++ (1,0);64=3x+4$\bigskip
$3x=60$\bigskip
\colorbox{yellow}{$x=20$}
\end{solutionorbox}
\end{tasks}
\end{document}
答案1
一个(非常)最小的工作示例是:
\documentclass{exam}
\usepackage{xcolor}
\printanswers
\colorsolutionboxes
\definecolor{SolutionBoxColor}{gray}{0.8}
\begin{document}
\begin{solutionorbox}
Foo
\end{solutionorbox}
\end{document}
您收到的警告实际上并不会造成任何伤害。您收到此警告的原因是该exam
软件包使用了特定于该color
软件包的命令语法。该xcolor
软件包也能理解此语法,但它更倾向于使用不同的、较新的语法。
您可以通过在序言中添加几行来解决这个问题:
\documentclass{exam}
\usepackage{xcolor}
\renewcommand{\colorfbox}[2]{%
\colorlet{currentColor}{.}%
{\color{#1}\fbox{\color{currentColor}#2}}%
}
\printanswers
\colorsolutionboxes
\definecolor{SolutionBoxColor}{gray}{0.8}
\begin{document}
\begin{solutionorbox}
Foo
\end{solutionorbox}
\end{document}
(感谢 Ulrike Fischer 确认这一点!)
这是什么原因造成的?罪魁祸首是文件中的这个定义exam.cls
(删除了注释):
\newcommand{\colorfbox}[2]{%
\expandafter\let\csname\string\color@saved@color\endcsname\current@color%
{\color{#1}\fbox{\color{saved@color}#2}}%
}
它旨在围绕某物创建一个框,并以某种颜色绘制框的框架,同时将框的内容保持在框外部使用的颜色。如果color
加载了包,则该定义使用的语法会很好地工作。
使用该xcolor
包,可以更轻松地通过颜色名称访问当前颜色.
。因此,上面的代码可以重写为:
\newcommand{\colorfbox}[2]{%
\colorlet{currentColor}{.}%
{\color{#1}\fbox{\color{currentColor}#2}}%
}
xcolor
当加载包时,TeX 遇到以 开头的命令中存储的某些颜色定义时,会发出有关“不兼容的颜色定义”的警告\color@
。 的原始定义\colorfbox
定义了这样的命令,因此每次使用此命令时都会发出警告。 重写的代码解决了这个问题。