resizebox 给出 -> pdfTeX 错误 (ext4):\pdfendlink 最终处于与 \pdfstartlink 不同的嵌套级别。\end{document}

resizebox 给出 -> pdfTeX 错误 (ext4):\pdfendlink 最终处于与 \pdfstartlink 不同的嵌套级别。\end{document}

我正在使用双列样式。我想将适合单列的表格放在其中,就像https://tex.stackexchange.com/questions/180543/creating-a-table-fitting-one-column-of-a-two-column-style-page。

但是,如果我在 a 中使用大字符串作为“large large large large large large” \rotatebox,则会出现错误:

pdfTeX error (ext4): \pdfendlink ended up in different nesting level than \pdfstartlink. \end{document}

\begin{table}
\caption{Summary of the characteristics used in some related works.}
\label{tableRelatedWorks2}
\resizebox{\columnwidth}{!}{%
\begin{tabular}{ccccccc}
\rotatebox[origin=c]{90}{\text{large large large large large large} }       & \text{KLSRf}   & \text{MLDFSP}       & \text{PNDND}       & \text{LDFSSVM}   & \rotatebox[origin=c]{90}{a}  & \rotatebox[origin=c]{90}{b}\\
\hline
\end{tabular}
}
\end{table}

如果我在上面的代码中放入一个包含 5 个字符的字符串而不是“large large large large large large”,它就可以起作用。

有人可以说一下哪里出了问题吗?

答案1

错误信息有没有什么与 相关的\resizebox。错误消息是由链接(例如,参见包hyperref)创建的,该链接在 中断开页面. 内附链接\resizebox 绝不跨越页面边界。

页面上元素的不同框大小会改变分页符,从而产生跨页面边界的链接,这只是偶然的。

尽量避免跨页面边界的链接,驱动程序对它们支持不够。由于驱动程序不知道页面上的哪些元素属于链接,因此它们使用启发式方法来获取这些元素。启发式方法在很多情况下都有效,但也有失败的情况。

答案2

我找到了一个解决方案:

我们需要更改括号中的 !,因为它与 \columnwidth 保持了纵横比。因此,让我们用距离代替 !。例如:

\begin{table}
\caption{Summary of the characteristics used in some related works.}
\label{tableRelatedWorks2}
\resizebox{\columnwidth}{10cm}{%
\begin{tabular}{ccccccc}
\rotatebox[origin=c]{90}{\text{large large large large large large} }       & \text{KLSRf}   & \text{MLDFSP}       & \text{PNDND}       & \text{LDFSSVM}   & \rotatebox[origin=c]{90}{a}  & \rotatebox[origin=c]{90}{b}\\
\hline
\end{tabular}
}
\end{table}

如果 10 厘米仍然有误差,则只需增加它。

因此,我又多放了几行来展示结果。就我的情况而言,5.5 厘米是理想的: 在此处输入图片描述

相关内容