\Xcline (makecell) не соответствует \vrule

\Xcline (makecell) не соответствует \vrule

Я не уверен, как исправить эту проблему, когда \Xclinefrom makecellне совпадает с \vruleI, установленным в my longtable(это необходимо, поскольку фактическая таблица может охватывать несколько страниц).

Вот MWE этой проблемы:

\documentclass[11pt]{article}

\usepackage{longtable}
\usepackage{makecell}

\begin{document}
    \begin{longtable}{c!{\vrule width 1.5pt}c!{\vrule width 1.5pt}c}
        \Xcline{2-3}{1.5pt}
        A & B & C \\
        \Xcline{1-3}{1.5pt}
        A & B & C \\
        \Xcline{2-3}{1.5pt}
    \end{longtable}
\end{document}

Проблема, с которой я столкнулся, заключается в том, что маленький квадрат между последним \Xcline и \vrule остается белым (я предполагаю, что это происходит потому, что \vrule оставляет место для горизонтальной линии, а \Xcline просто заполняет пространство под ячейкой, но я не знаю, как это исправить).

Вот скомпилированный MWE

Я пробовал добавлять дополнительные строки таблицы, в которых нет \vrules , но это тоже не работает. Если makecellпроблема в этом, я бы не отказался перейти на другой пакет, если есть другие предложения, мне на самом деле не нужны никакие другие makecellфункции.

решение1

Фон вашей таблицы неизвестен. Однако, как я уже сказал в своем комментарии, я бы еще раз подумал, действительно ли нужны вертикальные линии, т. е. вам не нравится, чтобы таблица выглядела профессионально (как предлагается в данной ссылке)...

Предположим, что вам нужны такие правила во всей таблице, тогда следующее предложение может вам помочь:

\documentclass{article}
\usepackage{hhline,colortbl}

\begin{document}
\arrayrulewidth=1.5pt
\begin{tabular}{l | c | c }
    \hhline{~|--}
  1 & 2 & 3     \\
    \hhline{-|--}
  4 & 5 & 6     \\ 
    \hhline{~|--}
\end{tabular}
\end{document}

введите описание изображения здесь

решение2

Пример ниже укажет вам правильное направление, поскольку он объединяет цвет и толщину с помощью команды \arrayrulecolorи \arrayrulewidth, которую можно применять глобально — перестановки ясно видны в примере.

введите описание изображения здесь

\documentclass{article}

\usepackage{hhline,colortbl}

\begin{document}
\arrayrulecolor{green}
\arrayrulewidth=2mm
\begin{tabular}{
 !{\color{red}\vrule width 2pt}
 l
 |
 c
 !{\color{blue}\vrule width 2pt}
 c
 ||
}
 one & two & three\\
\hline
  1 & 2 & 3\\%
\noalign{
\color{yellow}
\hrule height 5pt
}%
4&5&6\\
\hline
\end{tabular}
\end{document}

Вам также может быть интересно увидеть...https://tex.stackexchange.com/a/337790/197451

Соответствует ли это вашим требованиям?

Если вы считаете, что ответ соответствует вашим требованиям, пожалуйста, проголосуйте за ответ, нажав на красный треугольник слева и на галочку под ним.

решение3

Начиная с версии 6.11 (16.07.2022) nicematrixпоявилась возможность определять команды, аналогичные команде \clineс характеристиками линий Tikz (например: толщина с помощью клавиши Tikz line width).

В следующем примере я также использовал клавишу Tikz, shorten <чтобы получить идеальное соединение с жирными вертикальными линиями.

\documentclass[11pt]{article}
\usepackage{nicematrix,tikz}

\begin{document}    

\NiceMatrixOptions
  {
    custom-line = 
     {
       letter = I ,
       tikz = { line width = 1.5 pt } , 
       total-width = 1.5pt 
     } ,
    custom-line = 
     {
       command = boldline , 
       ccommand = cboldline ,
       tikz = { line width = 1.5pt , shorten < = -1.5pt } , 
       total-width = 1.5pt 
     }
  }

\begin{NiceTabular}{cIcIcIc}[cell-space-limits=5pt]
    \cboldline{2-3}
    A & B & C & D\\
    \cboldline{1-3}
    A & B & C & D\\
    \cboldline{2-3}
\end{NiceTabular}

\end{document}

Вам потребуется несколько компиляций (из-за узлов PGF/Tikz, используемых nicematrix).

Вывод кода выше

Связанный контент