Декоративный бордюр страницы в LaTeX и TikZ - PullRequest
1 голос
/ 07 апреля 2020

Давний пользователь LaTeX, но в первый раз. Я не очень хорошо разбираюсь в TikZ и не знаю, есть ли лучший способ решения этой проблемы.

Я пытаюсь добавить декоративную границу страницы вверху каждой страницы, чтобы напоминает границу конверта авиапочты: повторяющаяся последовательность синих, пустых и красных параллелограммов. Предполагается, что это будет шаблон полного обтекания, который при печати простирается до края физической страницы. Пример ниже.

air mail pattern example

Я хотел бы сгенерировать этот шаблон в LaTeX, если это возможно, и попробовал несколько вещей с TikZ, но с ограниченным успехом. Я могу нарисовать одну толстую границу на краю страницы (MWE ниже), но не могу изменить этот код, чтобы рисовать последовательные параллелограммы, потому что я уже не в своей тарелке с TikZ.

\documentclass[12pt]{scrartcl}
\usepackage{lipsum}
\usepackage[a4paper,margin=1in]{geometry}
\usepackage{tikz}
\usetikzlibrary{calc}
%\usetikzlibrary{patterns}
\usepackage{scrlayer-scrpage}

\begin{document}
\newcommand{\myborder}{\tikz[remember picture,overlay] 
    \draw [blue,line width=5mm]
    (current page.north west)
    rectangle
    (current page.north east)
    ;}

\chead[\myborder]{\myborder} % for page borders

\lipsum[1-3]
\end{document}

Один способ Рисование параллелограммов использует узлы https://tex.stackexchange.com/a/106995/212004, но моему приложению не требуется текст в параллелограмме, и я не смог изменить этот код в соответствии со своими потребностями.

Этот подход проще https://tex.stackexchange.com/a/136958/212004 но я не могу изменить этот код в достаточной степени, чтобы он работал с кодом границы в MWE.

Я застрял и был бы очень признателен за некоторые рекомендации о том, как решить эту проблему.

Спасибо!

1 Ответ

2 голосов
/ 07 апреля 2020

Один простой способ - нарисовать наклонные красные и синие линии и затем обрезать их в прямоугольник:

\documentclass[12pt]{scrartcl}
\usepackage{lipsum}
\usepackage[a4paper,margin=1in]{geometry}
\usepackage{tikz}
\usetikzlibrary{calc}
%\usetikzlibrary{patterns}
\usepackage{scrlayer-scrpage}

\begin{document}
\newcommand{\myborder}{%
  \begin{tikzpicture}[remember picture,overlay]
    \clip (current page.north west) rectangle ($(current page.north east)+(0,-0.7)$);
    \foreach \x in {-9,-6.3,...,27}{
      \draw[red, line width=0.6cm, rotate=-45] (\x,-\paperheight) -- ++(0,2*\paperheight);
      \draw[blue!30!lightgray,line width=0.6cm, rotate=-45] (\x+1.35,-\paperheight) -- ++(0,2*\paperheight);
    }
  \end{tikzpicture}
}

\chead[\myborder]{\myborder} % for page borders

\lipsum[1-3]
\end{document}

enter image description here

...