A friend sent me a file in LaTeX that she had received. When compiling it, one of the equations had a strange black rectangle:
The file was about 20 pages long. After minimizing and minimizing the file, I got this simplified version:
\documentclass[12pt]{article}
\usepackage[table]{xcolor}
\begin{document}
\centering
Some initial text.
\[
\begin{array}{c}
\rowcolor{red}
1 + 2 = 3 \\
\rowcolor{green}
1 + 2 = 3 \\
\rowcolor{blue}
\end{array}
\]
Some random two pages of text here \\
just to make debugging difficult.
\[
\left\{
\begin{array}{rrrrrrr}
2x &+& y &+& 4z &=& 0\\
x &+& 6y &+& 7z &=& 0\\
\end{array}
\right.
\]
Some final text.
\end{document}
Can you spot the error? In case you can't mentally compile LaTeX, the result is:
Now, is it easier to find the error?
[spoiler alert]
Well, the problem is in the previous table, it has the declaration of the color of the “last” row that does not exist. In the original version, it was a commented row, making it more difficult to spot. Moreover, between one table and the equations system there were one or two pages, making it more difficult to see that the error was actually caused by something that was much earlier than the position where it appeared.
\[
\begin{array}{c}
\rowcolor{red}
1 + 2 = 3 \\
\rowcolor{green}
1 + 2 = 3 \\
\rowcolor{blue} % <---- the error is here
\end{array}
\]
The strangest thing is that you get a black rectangle instead of a blue rectangle. I suppose some flag is set that says that there is something interesting in the next cell, but the color is reset and that is why it is black. I've been looking at the xcolor package code, but my LaTeX-Fu is not strong enough. (It is not even clear to me if this is classified as a bug or not.) And furthermore, there is a workaround that is not to write LaTex with errors.
Bonus: The error is in the first part, so with a trivial change in the second part we can get a matrix or table with a strange black cell.
\begin{center}
\begin{tabular}{|c|c| c|}
\hline
a & b & c \\
\hline
$1$ & $2$ & $3$ \\
\hline
\end{tabular}
\end{center}
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Perl最佳实践
康韦 / Taiwan公司 / 东南大学出版社 / 2008-3 / 78.00元
《Perl最佳实践》中所有的规则都是为了写出清晰、健壮、高效、可维护和简洁的程序而设计。Conway博士并不自诩这些规则是最广泛和最清晰的实践集,但实际上,《Perl最佳实践》确实提供了在实践中被广泛认可和应用的建议,而不是象牙塔似的编程理论。许多程序员凭直觉来编程,这些直觉来自于他们早期养成的习惯和风格。这样写出的程序似乎自然、直观,而且看起来也很不错。但是,如果你想严肃地对待程序员这份职业,那......一起来看看 《Perl最佳实践》 这本书的介绍吧!