Несколько проблем с Tikz Calendar

Несколько проблем с Tikz Calendar

Я пытаюсь реализовать свою собственную повестку дня, так как те, что были в магазине, никогда меня не удовлетворяли. Теперь у меня есть более или менее то, что я хотел получить. У меня все еще есть мелкие проблемы, которые я не могу обойти. Так что если у кого-то есть какие-то советы:

  1. Я отображаю только понедельник, четверг и пятницу в календаре (который появляется на каждой еженедельной странице в правом верхнем углу). Пока что единственное рабочее решение, которое я нашел, это отрицательный "xshift" в те дни, которые я не хочу отображать, в противном случае остается пустое место. Но по какой-то причине это работает нормально, за исключением недель, где понедельник начинается с другого месяца, чем четверг и пятница. В этом случае по какой-то причине добавляется большее пустое место, и я не знаю почему.

  2. В календаре, отображаемом на каждой странице, не отображается последняя вертикальная линия, хотя она указана в табличном определении, которое я использую для текста дня...

  3. Названия дней и месяцев отказываются переводиться на французский язык, и я не могу понять почему. Я обратил внимание на позицию usepackage, но все равно это не работает.

  4. Отличным дополнением было бы отображение разных календарей в зависимости от недели (значение \n в моем коде, один календарь, если \n нечетное, другой, если \n четное). Я не знаю, как это сделать.

Обычная неделя с выпусками 2 и 3 Обычная неделя с выпусками 2 и 3 Ужасная неделя с номером 1 (и номерами 2 и 3, если это имеет значение) Ужасная неделя с номером 1 (и номерами 2 и 3, если это имеет значение)

Спасибо большое за любой вклад! Ура!

Мой код ниже:

\documentclass{article}
\usepackage{advdate}

\makeatletter
\renewcommand\AdvanceDate[1][\@ne]{\global\advance\day#1 \FixDate}
\makeatother

\usepackage{tgheros,tikz,array}
\usetikzlibrary{calendar}
\usepackage[margin=1.25in,noheadfoot=true]{geometry}
\usepackage[french]{babel}
\usepackage[french]{translator}


%=========================================================
%== Page characteristics (Page Setup) ====================
\setlength{\textwidth}{126mm}
\setlength{\textheight}{230.0mm}
\setlength{\topmargin}{-30mm}
\setlength{\hoffset}{-20mm}
\setlength{\marginparwidth}{-20mm}
\setlength{\footskip}{0mm}
\setlength{\headheight}{11mm}
\setlength{\headsep}{4mm}
\setlength{\parindent}{0cm}
%=========================================================

\usetikzlibrary{backgrounds, positioning, scopes}
\newcommand{\textoverline}[1]{$\overline{\mbox{#1}}$}
\usepackage[absolute,overlay,showboxes]{textpos}
\usepackage{xcolor}
\usepackage{colortbl}
\definecolor{mygrey}{RGB}{239,239,239}
\usepackage{lastpage}
\usepackage{fancyhdr}
\begin{document}

\setlength{\arrayrulewidth}{0.1pt}
\sffamily
\footnotesize

\newcommand\mondaytext[2]{%
  \begin{tabular}{|>{\mdseries\footnotesize}cp{1cm}|cp{1cm}|}
    \multicolumn{2}{c}{#1 #2} \\
    \hline
    \begin{tabular}{@{}c@{}}8:35 \\ 9:30\end{tabular}& \\ \hline
    \begin{tabular}{@{}c@{}}9:30 \\ 10:25\end{tabular} & \textbf{4D} \\\hline\hline
    \begin{tabular}{@{}c@{}}10:40 \\ 11:35\end{tabular} & \textbf{4B}\\\hline
    \begin{tabular}{@{}c@{}}11:35 \\ 12:30\end{tabular} & \\\hline\hline
    \begin{tabular}{@{}c@{}}12:30\\ 13:05\end{tabular}  & \\\hline\hline
    \begin{tabular}{@{}c@{}}13:05\\14:00 \end{tabular}  & \\\hline
    \begin{tabular}{@{}c@{}}14:00\\14:55 \end{tabular} & \begin{tabular}{@{}c|c@{}}&\textbf{4B}\end{tabular}\\\hline\hline
    \begin{tabular}{@{}c@{}}15:10\\16:05 \end{tabular}& \textbf{4C}\\\hline
  \end{tabular}
}
\newcommand\thursdaytext[2]{%
  \begin{tabular}{|>{\mdseries\footnotesize}cp{1cm}|cp{1cm}|}
    \multicolumn{2}{c}{#1 #2} \\
    \hline
    \begin{tabular}{@{}c@{}}8:35 \\ 9:30\end{tabular}& \textbf{4D}\\ \hline
    \begin{tabular}{@{}c@{}}9:30 \\ 10:25\end{tabular} & \textbf{4B}\\\hline\hline
    \begin{tabular}{@{}c@{}}10:40 \\ 11:35\end{tabular} & \textbf{4C}\\\hline
    \begin{tabular}{@{}c@{}}11:35 \\ 12:30\end{tabular} & \\\hline\hline
    \begin{tabular}{@{}c@{}}12:30\\ 13:05\end{tabular}  & \\\hline\hline
    \begin{tabular}{@{}c@{}}13:05\\14:00 \end{tabular}  & \begin{tabular}{@{}c|c@{}}\textbf{4D}&\end{tabular}\\\hline
    \begin{tabular}{@{}c@{}}14:00\\14:55 \end{tabular} & \\\hline\hline
    \begin{tabular}{@{}c@{}}15:10\\16:05 \end{tabular}& \\\hline
  \end{tabular}
}
\newcommand\fridaytext[2]{%
  \begin{tabular}{|>{\mdseries\footnotesize}p{1cm}|cp{1cm}|}
    \multicolumn{2}{c}{#1 #2} \\
    \hline
    \begin{tabular}{@{}c@{}}8:35 \\ 9:30\end{tabular}& \textbf{DF:3C}\\ \hline
    \begin{tabular}{@{}c@{}}9:30 \\ 10:25\end{tabular} & \textbf{4D} \\\hline\hline
    \begin{tabular}{@{}c@{}}10:40 \\ 11:35\end{tabular} & \\\hline
    \begin{tabular}{@{}c@{}}11:35 \\ 12:30\end{tabular} & \\\hline\hline
    \begin{tabular}{@{}c@{}}12:30\\ 13:05\end{tabular}  & \\\hline\hline
    \begin{tabular}{@{}c@{}}13:05\\14:00 \end{tabular}  & \begin{tabular}{@{}c|c@{}}& \textbf{4C}\end{tabular} \\\hline
    \begin{tabular}{@{}c@{}}14:00\\14:55 \end{tabular} & \textbf{4D}\\\hline\hline
    \begin{tabular}{@{}c@{}}15:10\\16:05 \end{tabular}& \textbf{4C}\\\hline
  \end{tabular}
}

\setlength{\skip\footins}{0cm}
\pagestyle{empty}
\SetDate[31/08/2020]
\foreach \n in {1,...,45}{

\begin{textblock}{8}(2,1.25)

  \textblockcolour{mygrey!40}
  \vspace{5mm}
    { \qquad \bfseries Notes : }
  \vspace{26mm}

  \vspace{25mm}
\end{textblock}
\begin{textblock}{15}(2,14.5)

  \textblockcolour{mygrey!40}
  \vspace{2mm}
    { \quad \bfseries Remarques : }
  \vspace{18mm}
\end{textblock}
\enlargethispage{40pt}
\setlength{\arrayrulewidth}{0.5pt}
\arrayrulecolor{black}
\LARGE PLANNING DE LA SEMAINE \n \footnotesize
\begin{tikzpicture}[remember picture, overlay,shift={(5,-3.5)}]
  \calendar (cal)
  [dates=\year-\month-\day to \year-\month-\day+5,day list right,day xshift=3cm,
   execute before day scope=
  {
    \ifdate{Tuesday,Wednesday}{\pgftransformxshift{-3cm}}{}
    },
    day text={},
    execute at begin day scope={
    \ifdate{Monday}{\tikzmonthcode}{}},
    set style={{every month}+=[anchor=base east,font=\bfseries\large,xshift=-2.5em,yshift=12em]},
%  execute after day scope={\ifdate{Sunday}{\pgftransformyshift{-30em},\pgftransformxshift{-10.1cm}}{}}
  ]
  if(Monday) [day text={\mondaytext{\%wt}{\%d0}}]
  if(Thursday) [day text={\thursdaytext{\%wt}{\%d0}}]
  if(Friday) [day text={\fridaytext{\%wt}{\%d0}}]  
  if (weekend) [font=\bfseries]
  if (Sunday) [red];
%  \node[above right,font=\bfseries\footnotesize] at (cal-2020-09-14.north west)
%    {14--18 Septembre 2020};
\end{tikzpicture}
\\
\\
\\
\\
\\
\\
\\
\\
\\
\\
\\
\\
\\
\\
\\
\\
\\
\\
\\
\\
\\
\\
\setlength{\arrayrulewidth}{0.1pt}
\arrayrulecolor{black!60}
\begin{tabular}{p{19cm}}
\textbf{LUNDI :} \\
\hline \\
\hline \\
\hline \\
\hline \\
\hline \\
\hline \\
\hline \\
\hline \\
\hline \\
\hline \\
\hline \\
\hline \\
\hline \\
\hline \\
\hline \\
\\
\textbf{JEUDI :} \\
\hline \\
\hline \\
\hline \\
\hline \\
\hline \\
\hline \\
\hline \\
\hline \\
\hline \\
\hline \\
\hline \\
\hline \\
\hline \\
\hline \\
\hline \\
\\
\textbf{VENDREDI :} \\
\hline \\
\hline \\
\hline \\
\hline \\
\hline \\
\hline \\
\hline \\
\hline \\
\hline \\
\hline \\
\hline \\
\hline \\
\hline \\
\hline \\
\hline \\
\hline 
\end{tabular}

\AdvanceDate[7]

\newpage
}

\end{document}

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