在某个部分下定位调整框时出现问题

在某个部分下定位调整框时出现问题

我只想要一个section标题和adjustbox一个下方有表格的。事实上,它们交换了位置,即表格出现在上方。

我尝试了一些像假设的halign?而不是center写入的命令\begin{adjustbox},但我无法得到任何解决方案。

[H]也许它与表格中的使用存在一些等价性。

有什么建议吗?

\documentclass[12pt]{article}
\renewcommand{\baselinestretch}{1.5}
\usepackage[utf8]{inputenc}
\usepackage[catalan]{babel}

\usepackage{multirow}
\usepackage[table,xcdraw]{xcolor}
\usepackage{adjustbox}

\begin{document}

\section{Taules}

\begin{adjustbox}{center, captionbelow={Cerca d'avaries I.}, float=table}

\begin{tabular}{|l|l|l|}
\hline
\rowcolor[HTML]{FFFC9E} 
\multicolumn{1}{|c|}{\cellcolor[HTML]{FFFC9E}\textbf{Incidents}}                                                    & \multicolumn{1}{c|}{\cellcolor[HTML]{FFFC9E}\textbf{Causes possibles}}                                                                      & \multicolumn{1}{c|}{\cellcolor[HTML]{FFFC9E}\textbf{Verificacions}}                                                                \\ \hline
                                                                                                                    & La xarxa no està sota tensió.                                                                                                               & \begin{tabular}[c]{@{}l@{}}Verificar la tensió en els\\ comandaments.\end{tabular}                                                 \\ \cline{2-3} 
\multirow{-2}{*}{El motor no arranca en el buit.}                                                                   & El circuit induït està tallat.                                                                                                              & \begin{tabular}[c]{@{}l@{}}Comprovar el circuit induït i\\ el reòstat d'arrencada.\end{tabular}                                    \\ \hline
\begin{tabular}[c]{@{}l@{}}El motor s'engega en el buit\\ i s'embala.\end{tabular}                                  & El circuit inductor està tallat.                                                                                                            & \begin{tabular}[c]{@{}l@{}}Comprovar el circuit inductor\\ i el reòstat de camp.\end{tabular}                                      \\ \hline
\begin{tabular}[c]{@{}l@{}}El motor s'engega, però es\\ cala.\end{tabular}                                          & \begin{tabular}[c]{@{}l@{}}Error de muntatge: el born comú,\\ induït-inductor, està unit al reòstat\\ en comptes de la xarxa.\end{tabular}  & \begin{tabular}[c]{@{}l@{}}Un fil de la xarxa ha d'anar\\ directament al born comú.\end{tabular}                                   \\ \hline
\begin{tabular}[c]{@{}l@{}}El motor s'engega amb poca\\ càrrega i s'embala.\end{tabular}                            & \begin{tabular}[c]{@{}l@{}}Error de muntatge: el born induït-\\ inductor està unital reòstat i no a\\ la xarxa.\end{tabular}                & \begin{tabular}[c]{@{}l@{}}Un fil de la xarxa ha d'anar\\ directament al born comú.\end{tabular}                                   \\ \hline
\begin{tabular}[c]{@{}l@{}}El motor s'engega massa\\ lentament.\end{tabular}                                        & Falta d'excitació.                                                                                                                          & \begin{tabular}[c]{@{}l@{}}S'ha d'engegar sempre amb el\\ reòstat de camp al zero.\end{tabular}                                    \\ \hline
\end{tabular}

\end{adjustbox}

\end{document}

在此处输入图片描述

答案1

使用下列选项之一来代替float=table

  • nofloat=table:这会将内容adjustbox直接放在部分下方,而不会尝试改变定位。
  • table=hb(或等效地float={table}[hb]:这将首先尝试将放在adjustbox该位置,如果页面上剩余的空间不够,它将在页面底部寻找一个位置来放置它。
\documentclass[12pt]{article}
\renewcommand{\baselinestretch}{1.5}
\usepackage[utf8]{inputenc}
\usepackage[catalan]{babel}

\usepackage{multirow}
\usepackage[table,xcdraw]{xcolor}
\usepackage{adjustbox}

\begin{document}

\section{Taules}

\begin{adjustbox}{center, captionbelow={Cerca d'avaries I.}, nofloat=table}

\begin{tabular}{|l|l|l|}
\hline
\rowcolor[HTML]{FFFC9E} 
\multicolumn{1}{|c|}{\cellcolor[HTML]{FFFC9E}\textbf{Incidents}}                                                    & \multicolumn{1}{c|}{\cellcolor[HTML]{FFFC9E}\textbf{Causes possibles}}                                                                      & \multicolumn{1}{c|}{\cellcolor[HTML]{FFFC9E}\textbf{Verificacions}}                                                                \\ \hline
                                                                                                                    & La xarxa no està sota tensió.                                                                                                               & \begin{tabular}[c]{@{}l@{}}Verificar la tensió en els\\ comandaments.\end{tabular}                                                 \\ \cline{2-3} 
\multirow{-2}{*}{El motor no arranca en el buit.}                                                                   & El circuit induït està tallat.                                                                                                              & \begin{tabular}[c]{@{}l@{}}Comprovar el circuit induït i\\ el reòstat d'arrencada.\end{tabular}                                    \\ \hline
\begin{tabular}[c]{@{}l@{}}El motor s'engega en el buit\\ i s'embala.\end{tabular}                                  & El circuit inductor està tallat.                                                                                                            & \begin{tabular}[c]{@{}l@{}}Comprovar el circuit inductor\\ i el reòstat de camp.\end{tabular}                                      \\ \hline
\begin{tabular}[c]{@{}l@{}}El motor s'engega, però es\\ cala.\end{tabular}                                          & \begin{tabular}[c]{@{}l@{}}Error de muntatge: el born comú,\\ induït-inductor, està unit al reòstat\\ en comptes de la xarxa.\end{tabular}  & \begin{tabular}[c]{@{}l@{}}Un fil de la xarxa ha d'anar\\ directament al born comú.\end{tabular}                                   \\ \hline
\begin{tabular}[c]{@{}l@{}}El motor s'engega amb poca\\ càrrega i s'embala.\end{tabular}                            & \begin{tabular}[c]{@{}l@{}}Error de muntatge: el born induït-\\ inductor està unital reòstat i no a\\ la xarxa.\end{tabular}                & \begin{tabular}[c]{@{}l@{}}Un fil de la xarxa ha d'anar\\ directament al born comú.\end{tabular}                                   \\ \hline
\begin{tabular}[c]{@{}l@{}}El motor s'engega massa\\ lentament.\end{tabular}                                        & Falta d'excitació.                                                                                                                          & \begin{tabular}[c]{@{}l@{}}S'ha d'engegar sempre amb el\\ reòstat de camp al zero.\end{tabular}                                    \\ \hline
\end{tabular}

\end{adjustbox}

\end{document}

在此处输入图片描述

答案2

我宁愿改变此表的设计方式:

  • 不要adjustbox用于将表格缩小到文本宽度(它也会减少使用的字体大小,这可能会变得难以阅读),而是最好使用浮动table和适当的表格设置
  • 用于tabularx表格环境,规定文本宽度,并使表格适合文本宽度
  • 使用tabularx列类型X可以消除嵌套表格的所有混乱tabular,并手动拆分单元格中的长文本。现在这可以自动完成
  • 定义新的列类型,使单元格中的文本能够“智能”断开和连字。

考虑上述内容,可以给出简洁明了的代码(在我看来)更好地查看您的表格:

\documentclass[12pt]{article}
\renewcommand{\baselinestretch}{1.5}
\usepackage[utf8]{inputenc}
\usepackage[catalan]{babel}

\usepackage[table,xcdraw]{xcolor}
\usepackage{ragged2e}
\usepackage{makecell, tabularx}           % new
\renewcommand\theadfont{\bfseries\small}  % for column headers font
\newcolumntype{L}{>{\RaggedRight}X}       % new column type which enable
                                          % "smart" ragged text on the 
                                          % right side of multi line text
                                          % in cells
%-------------------------------- show page layout, only for test
\usepackage{showframe}
\renewcommand\ShowFrameLinethickness{0.15pt}
\renewcommand*\ShowFrameColor{\color{red}}
%---------------------------------------------------------------%

\begin{document}

\section{Taules}

\begin{table}[ht]
\small                   % smaller font, for better fit text in cells
\begin{tabularx}{\linewidth}{|L|L|L|}
    \hline
\rowcolor[HTML]{FFFC9E}  % sufficient for coloring of the first row
\thead{Incidents}   & \thead{Causes possibles} & \thead{Verificacions}  \\
    \hline
El motor no arranca en el buit.
    &   El circuit induït està tallat.
        &   Comprovar el circuit induït i el reòstat d'arrencada.       \\
    \hline
El motor s'engega en el buit i s'embala.
    &   El circuit inductor està tallat.
        &   Comprovar el circuit inductor i el reòstat de camp.         \\
    \hline
El motor s'engega, però es cala.
    &   Error de muntatge: el born comú, induït-inductor, està unit al reòstat en comptes de la xarxa.
        &   Un fil de la xarxa ha d'anar directament al born comú.      \\
    \hline
El motor s'engega amb poca càrrega i s'embala.
    &   Error de muntatge: el born induïtinductor està unital reòstat i no a la xarxa.
        &   Un fil de la xarxa ha d'anar directament al born comú.      \\
    \hline
El motor s'engega massa lentament.
    &   Falta d'excitació.
        &   S'ha d'engegar sempre amb el reòstat de camp al zero.       \\
    \hline
\end{tabularx}
    \caption{Cerca d'avaries I.}
\end{table}

\end{document}

在此处输入图片描述

编辑: 我没有干预页面设计。如果您考虑使用更宽的文本宽度,您可以使用“几何包”来实现,例如添加

\usepackage[margin=25mm]{geometry}

之后\documentclass{...}你将获得以下表格:

在此处输入图片描述

相关内容