некоторые заметки на полях не отображаются

некоторые заметки на полях не отображаются

В следующем примере некоторые из заметок на полях не отображаются, даже после tcolorboxes. Какие из них отображаются, зависит от длины tcolorbox. Как сделать так, чтобы мои заметки на полях отображались?

(Мои поля настроены таким образом, потому что я планирую активно использовать заметки на полях)

МВЭ:

\documentclass[a4paper]{scrbook}

\usepackage{lipsum} 
\usepackage{tcolorbox}
\usepackage{marginnote}

\usepackage[a4paper,left=1.9cm,right=7.3cm,top=3.0cm,bottom=4.8cm,marginparwidth=5.4cm,marginparsep=4.5mm,heightrounded]{geometry}
%\setlength\evensidemargin{\oddsidemargin}
\begin{document}

\begin{tcolorbox}[]
\lipsum[2-5]
\marginnote[]{Test1.1}
\marginnote[Test1.2]{}
\end{tcolorbox}

\begin{tcolorbox}[]
\lipsum[2-2]
\marginnote[]{Test2.1}
\marginnote[Test2.2]{}
\end{tcolorbox}


\begin{tcolorbox}[]\lipsum[2-2]
\marginnote[]{Test2.1}
\marginnote[Test2.2]{}
\end{tcolorbox}

Some more Text\marginnote[]{Test3.1}\marginnote[Test3.2]{}
\end{document}
\end{document}

решение1

Первый необязательный аргумент и обязательный аргумент \marginnoteтакие же, как и для \marginpar. Необязательный аргумент<слева>Аргумент используется, если примечание печатается на левом поле (по умолчанию четные страницы в двусторонних документах). Обязательный<правильно>Аргумент используется, если примечание на полях печатается на правом поле (по умолчанию нечетные страницы в двухстороннем документе). Аргументы не могут использоваться для перемещения используемого столбца полей слева направо или справа налево (см. мой последний пример, как выбрать другое поле).

Так что если вы используете пустой<слева>аргумент и примечание помещается в левое поле, пустое примечание будет напечатано пустым и, следовательно, будет невидимым. То же самое, если вы используете пустое<правильно>аргумент, а вывод находится на правом поле.

Так что все, как и ожидалось.

Может быть, вы просто хотите использовать только обязательный аргумент и удалить необязательный. Но в этом случае с двумя следующими сразу \marginnoteвторой будет перекрывать первый:

\documentclass[a4paper]{scrbook}

\usepackage{lipsum} 
\usepackage{tcolorbox}
\usepackage{marginnote}

\usepackage[a4paper,left=1.9cm,right=7.3cm,top=3.0cm,bottom=4.8cm,marginparwidth=5.4cm,marginparsep=4.5mm,heightrounded]{geometry}
%\setlength\evensidemargin{\oddsidemargin}
\begin{document}

\begin{tcolorbox}[]
  \lipsum[2-5]
  \marginnote{Test1.1}
  \marginnote{Test1.2}
\end{tcolorbox}

\begin{tcolorbox}[]
\lipsum[2-2]
\marginnote{Test2.1}
\marginnote{Test2.2}
\end{tcolorbox}


\begin{tcolorbox}[]\lipsum[2-2]
\marginnote{Test2.1}
\marginnote{Test2.2}
\end{tcolorbox}

Some more Text\marginnote{Test3.1}\marginnote{Test3.2}
\end{document}

надпечатка

Возможно, вам также понадобится вертикальное смещение для второго элемента:

\documentclass[a4paper]{scrbook}

\usepackage{lipsum} 
\usepackage{tcolorbox}
\usepackage{marginnote}

\usepackage[a4paper,left=1.9cm,right=7.3cm,top=3.0cm,bottom=4.8cm,marginparwidth=5.4cm,marginparsep=4.5mm,heightrounded]{geometry}
%\setlength\evensidemargin{\oddsidemargin}
\begin{document}

\begin{tcolorbox}[]
  \lipsum[2-5]
  \marginnote{Test1.1}
  \marginnote{Test1.2}[\baselineskip]
\end{tcolorbox}

\begin{tcolorbox}[]
\lipsum[2-2]
\marginnote{Test2.1}
\marginnote{Test2.2}[\baselineskip]
\end{tcolorbox}


\begin{tcolorbox}[]\lipsum[2-2]
\marginnote{Test2.1}
\marginnote{Test2.2}[\baselineskip]
\end{tcolorbox}

Some more Text\marginnote{Test3.1}\marginnote{Test3.2}[\baselineskip]
\end{document}

вертикальное смещение

или горизонтальное смещение:

\documentclass[a4paper]{scrbook}

\usepackage{lipsum} 
\usepackage{tcolorbox}
\usepackage{marginnote}

\usepackage[a4paper,left=1.9cm,right=7.3cm,top=3.0cm,bottom=4.8cm,marginparwidth=5.4cm,marginparsep=4.5mm,heightrounded]{geometry}
%\setlength\evensidemargin{\oddsidemargin}
\begin{document}

\begin{tcolorbox}[]
  \lipsum[2-5]
  \marginnote[Test1.1\hphantom{ Test1.2}]{Test1.1}%
  \marginnote[Test1.2]{\hphantom{Test1.1 }Test1.2}
\end{tcolorbox}

\begin{tcolorbox}[]
  \lipsum[2-2]
  \marginnote[Test2.1\hphantom{ Test2.2}]{Test2.1}%
  \marginnote[Test2.2]{\hphantom{Test2.1 }Test2.2}
\end{tcolorbox}


\begin{tcolorbox}[]\lipsum[2-2]
  \marginnote[Test2.1\hphantom{ Test2.2}]{Test2.1}%
  \marginnote[Test2.2]{\hphantom{Test2.1 }Test2.2}
\end{tcolorbox}

Some more Text%
\marginnote[Test3.1\hphantom{ Test3.2}]{Test3.1}%
\marginnote[Test3.2]{\hphantom{Test3.1 }Test3.2}

\end{document}

горизонтальное смещение

Но, возможно, вы просто хотите, чтобы некоторые заметки располагались на левом поле, а некоторые — на правом. В этом случае вам следует использовать \reversemarginparи \normalmarginparдля переключения поля, используемого для заметок. Но вам не нужно использовать необязательный аргумент, если содержимое заметки не зависит от используемого поля:

\documentclass[a4paper]{scrbook}

\usepackage{lipsum} 
\usepackage{tcolorbox}
\usepackage{marginnote}

\usepackage[a4paper,left=1.9cm,right=7.3cm,top=3.0cm,bottom=4.8cm,marginparwidth=5.4cm,marginparsep=4.5mm,heightrounded]{geometry}
%\setlength\evensidemargin{\oddsidemargin}
\begin{document}

\begin{tcolorbox}[]
\lipsum[2-5]
\marginnote{Test1.1}
\reversemarginpar
\marginnote{Test1.2}
\end{tcolorbox}

\begin{tcolorbox}[]
  \lipsum[2-2]
  \reversemarginpar
  \marginnote{Test2.1}
  \normalmarginpar
  \marginnote{Test2.2}
\end{tcolorbox}


\begin{tcolorbox}[]\lipsum[2-2]
  \reversemarginpar
  \marginnote{Test2.1}
  \normalmarginpar
  \marginnote{Test2.2}
\end{tcolorbox}

Some more Text\reversemarginpar\marginnote{Test3.1}\normalmarginpar\marginnote{Test3.2}
\end{document}

оба поля

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

BTW: KOMA-Script также предоставляет пакет, scrlayer-notecolumnпозволяющий определять несколько столбцов заметок, например, один на левом поле и один на правом поле, даже с разной шириной, и позволяющий выбирать столбец заметок, в котором должна быть напечатана заметка. Но насколько мне известно, scrlayer-notecolumnэто всего лишь доказательство концепции, и поэтому я не знаю, следует ли использовать его для реального документа.

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