我尝试使用图层\usepackage{scrlayer-scrpage}
并添加 Tikz 绘图,但它似乎仍然将绘图与其他东西相关联,而不是位于任何东西的后面。
我不确定我做错了什么,也不确定这些命令是否达到了我想要的效果。
- 如何
\usepackage{scrlayer-scrpage}
正确地在一页中创建 2 个层? - 我应该在何时(在文件的什么位置)放置删除图层的命令来实现背景(二十面体)和所有其余部分?
该文件编译没有问题,更多的是(我认为)理解在哪里放置以及如何使用命令(我在互联网上找到的)
我把整个代码放在这里,只更改了内容以使其更易于阅读。我保留了二十面体,因为它很漂亮。第一部分是包(请在回答时考虑它们)。第二部分是文档。
\documentclass[
paper=a4, % Papierformat
oneside, % einseitig
fontsize=14pt, % Schriftgröße
headsepline=.5pt, % untere Kopfzeilenlinie
numbers=noenddot, % 1.1.1. --> 1.1.1
parskip=half, % halber Absatz
captions=tableheading, % Tabellenüberschriften
DIV=12, % Satzspiegel (KOMA-Script)
toc=bibliography, % Quellenverzeichnis ins Inhaltsverzeichnis aufnehmen
%tocdepth=4, % Begrenzung der Ebenen im Inhaltsverzecihnis
%headings=normal, % Größe der überschriften verkleinern
final % Status des Dokuments (final/draft)
]{scrartcl}
%--------------------------------------------------------------------------------
% Ab hier werden Packages geladen.
\usepackage{fouriernc}
\usepackage[ngerman]{babel}
\usepackage[ansinew]{inputenc} % this is needed for umlauts
\usepackage[T1]{fontenc} % this is needed for correct output of umlauts in pdf
\usepackage{esvect} % this is needed for dot over vector \dot{\vec{v}}
\usepackage{cancel} % diagonal line on letter to show erase
\usepackage{framed} % highlight text with chosen color
\usepackage{mathtools} %needed to avoid \\ problems
\newcommand\PZB{\stackrel{\mathclap{\normalfont\mbox{PBZ}}}{=}}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\normalfont % Lädt aus T1lmr.fd.
\DeclareFontShape{T1}{lmr}{bx}{sc} { <-> ssub * cmr/bx/sc }{}
\usepackage{cite}
\usepackage[hyphens]{url} % Nutze vorhandene Bindestriche für Zeilenumbrüche in URLs.
\usepackage{etoolbox}
\apptocmd{\sloppy}{\hbadness 10000\relax}{}{} % Ignoriere Boxen mit zu viel Weißraum im 'sloppy'-Modus.
\usepackage{amsmath,amsfonts}
\usepackage{amssymb}
\renewcommand{\theequation}{\arabic{section}.\arabic{subsection}} % Formeln mit genauer
Abschnittangabe beschriften.
%package trfsign adds laplace and fourier correspondence signs
\usepackage{trfsigns}
\numberwithin{equation}{subsection} % Die Nummerierung einer Gleichung hinten anhängen.
\newcommand\numberthis{\addtocounter{equation}{1}\tag{\theequation}} % Einzelne Nummerierung innerhalb von 'align*'-Umgebung.
%\sisetup{exponent-product= \cdot ,output-decimal-marker = {,},detect-family,detect-display-math = true,per-mode = symbol-or-fraction}
% Pakete für Quellcode
\usepackage{enumerate}
\usepackage{listings}
\usepackage{paralist}
\usepackage[usenames,dvipsnames]{xcolor}
\lstset{
basicstyle=\scriptsize\ttfamily,
keywordstyle=\bfseries\ttfamily\color{NavyBlue},
stringstyle=\color{violet}\ttfamily,
commentstyle=\color{green}\ttfamily,
emph={square},
emphstyle=\color{blue}\texttt,
emph={[2]root,base},
emphstyle={[2]\color{yac}\texttt},
language=c,%
tabsize=2,%
basicstyle=\footnotesize\ttfamily,%
numbers=left,%
numberfirstline,%
breaklines=true,%
breakatwhitespace=true,%
linewidth=\textwidth,%
xleftmargin=0.075\textwidth,%
frame=tlrb,%
captionpos=b%
inputencoding={utf8},
extendedchars=false,
% Definiere Sonderzeichen:
literate={°}{{\si^{\circ}ree}}1
{ä}{{\"a}}1
{ö}{{\"o}}1
{ü}{{\"u}}1
{Ä}{{\"A}}1
{Ö}{{\"O}}1
{ü}{{\"U}}1 %
}
% Pakete für Grafiken
\usepackage{graphicx}
\usepackage{subfigure}
\usepackage{rotating}
\usepackage{float}
\usepackage{picinpar}
\usepackage[section]{placeins}
\usepackage{microtype} % Schriftbildverschönerung
\usepackage{textcomp} % Fügt zusätzliche Symbole im Textmodus ein.
\usepackage[ % Einstellungen für Bildunter- bzw. überschriften:
format=hang, % Einzug
indention=-0.5cm, % Einzugskorrektur
]{caption}
% Pakete für Schaltpläne/Zeichnungen
\usepackage{pgfplots}
\pgfplotsset{compat=1.14}
\usepackage{tikz,tikz-3dplot} % TIKZ-Paket
\usepackage{circuitikz} % Schaltpläne mit TIKZ erstellen.
\usetikzlibrary{circuits.ee.IEC,positioning} % Verwende offizielle IEC-Schaltzeichen.
\usetikzlibrary{matrix}
\usetikzlibrary{arrows.meta}
\usetikzlibrary{calc} %NEED TO CALCULATE NEW POINTS
\usepackage{fouriernc}
% Pakete für Tabellen
\usepackage{array}
\usepackage{tabularx}
\newcolumntype{w}[1]{>{\raggedleft\hspace{0pt}}p{#1}}
\usepackage{bigdelim} % Ermögliche bessere Formatierung der Zellen untereinander.
\usepackage{booktabs} % Ermögliche besseres Tabellen-Layout.
% Pakete für Style/Formatierung
\usepackage{fancybox}
\usepackage{ulem}
\usepackage{setspace}
\usepackage[a4paper,lmargin={5mm},rmargin={5mm},tmargin={25mm},bmargin= {25mm}]{geometry}
\addtolength{\footskip}{-0.8cm} % Fussbereich 0,8 cm höher, so dass die Seitennummierung höher ist.
\onehalfspacing
% Anhang
\usepackage[title, titletoc]{appendix}
\usepackage{hyperref} % Muss ganz zum Schluss geladen werden.
% Packages komplett!
% Kopf- und Fußzeile setzen
\usepackage{scrlayer-scrpage} % KOMA-Paket
\pagestyle{scrheadings} % Seitenstil
\setkomafont{pagehead}{\normalfont}
\clearscrheadfoot % Lösche alle Voreinstellungen.
%\ihead{\untertitel} % Schreibe Untertitel innen in die Kopfzeile
%\chead{\nameOfTitel} % Schreibe Versuchsthema mittig in die Kopfzeile
%\ohead{\autor} % Schreibe Name außen in die Kopfzeile
\cfoot{\pagemark} % Erstelle (zentrale) Seitennummern.
%commands
\newcommand{\TF}[2][15em]{\TextField[borderwidth=0.1pt,
width=#1,
height=1.25em,
charsize=10pt,
backgroundcolor=blue!50!gray!20,
color=blue!44!black,
bordercolor=red!20,
name=#2
]{}}
\newcommand{\BTF}[2][15em]{\TextField[borderwidth=0.1pt,
width=#1,
height=2.5em,
charsize=10pt,
backgroundcolor=blue!50!gray!20,
color=blue!44!black,
bordercolor=red!20,
name=#2
]{}}
% \TF{a}\\
% \TF[25em]{b}
%commands for d20 background drawing
\pgfmathsetmacro{\b}{0.1}
\pgfmathsetmacro{\c}{1-\b}
\newcommand{\pentagon}[6]{
\filldraw[fill=gray,draw=black]
($\c*(#1)+\b*(#2)$)--
($\c*(#1)+\b*(#3)$)--
($\c*(#1)+\b*(#4)$)--
($\c*(#1)+\b*(#5)$)--
($\c*(#1)+\b*(#6)$)--cycle;
}
\newcommand{\hexagon}[4]{
\draw[#4]
($\c*(#1)+\b*(#2)$)--
($\b*(#1)+\c*(#2)$)--
($\c*(#2)+\b*(#3)$)--
($\b*(#2)+\c*(#3)$)--
($\c*(#3)+\b*(#1)$)--
($\b*(#3)+\c*(#1)$)--cycle;
}
该文件:
\begin{document}
\DeclareNewLayer[% define a new layer
background,
head,
contents=\transparent{0.5}\includegraphics[width=\textwidth]{head}
\begin{tabular}{rll}
&a&b
&c&d
\end{tabular}
\tdplotsetmaincoords{65}{100}
\begin{tikzpicture}[tdplot_main_coords,scale=1,line join=round]
\pgfmathsetmacro\a{1}
\pgfmathsetmacro{\phi}{\a*(1+sqrt(5))/2}
\path
coordinate(A) at (0,\phi,\a)
coordinate(B) at (0,\phi,-\a)
coordinate(C) at (0,-\phi,\a)
coordinate(D) at (0,-\phi,-\a)
coordinate(E) at (\a,0,\phi)
coordinate(F) at (\a,0,-\phi)
coordinate(G) at (-\a,0,\phi)
coordinate(H) at (-\a,0,-\phi)
coordinate(I) at (\phi,\a,0)
coordinate(J) at (\phi,-\a,0)
coordinate(K) at (-\phi,\a,0)
coordinate(L) at (-\phi,-\a,0);
%MORE POINTS
%G-CEAKL "TOP"
\hexagon{G}{C}{E}{draw opacity = 0.2}
\hexagon{G}{E}{A}{draw opacity = 0.2}
\hexagon{G}{A}{K}{draw opacity = 0.2}
\hexagon{G}{K}{L}{draw opacity = 0.2}
\hexagon{G}{L}{C}{draw opacity = 0.2}
%F-IJDHB "BOTTOM"
\hexagon{F}{I}{J}{draw opacity = 0.2}
\hexagon{F}{J}{D}{draw opacity = 0.2}
\hexagon{F}{D}{H}{draw opacity = 0.2}
\hexagon{F}{H}{B}{draw opacity = 0.2}
\hexagon{F}{B}{I}{draw opacity = 0.2}
%CJEIABKHLD "STRIP"
\hexagon{C}{J}{E}{draw opacity = 0.2}
\hexagon{J}{E}{I}{draw opacity = 0.2}
\hexagon{E}{I}{A}{draw opacity = 0.2}
\hexagon{I}{A}{B}{draw opacity = 0.2}
\hexagon{A}{B}{K}{draw opacity = 0.2}
\hexagon{B}{K}{H}{draw opacity = 0.2}
\hexagon{K}{H}{L}{draw opacity = 0.2}
\hexagon{H}{L}{D}{draw opacity = 0.2}
\hexagon{L}{D}{C}{draw opacity = 0.2}
\hexagon{D}{C}{J}{draw opacity = 0.2}
\end{tikzpicture}
%--------------------------------------------------------
\newpage
\begin{table}[htb]
\caption{some table}
\flushleft
\begin{tabular}{|l|l|l|l|}
\hline
&1&2&3&4
&5&6&7&8
\end{tabular}
\end{table}
\end{document}
答案1
您必须使用正确的语法\DeclareNewLayer
:
\DeclareNewLayer[<options>]{<layer name>}
请注意,如果向图层页面样式添加未定义的图层,则不会收到任何错误消息。
然后,您必须决定应该将图层添加到哪个图层页面样式:单一页面样式,如scrheadings
、等plain.scrheadings
。empty
如果它应该与所有图层页面样式一起使用,那么您必须将图层添加到样式@everystyle@
。
如果该层应该在其他层使用之前添加
\AddLayersAtBeginOfPageStyle{<layer page style name>}{<layer names>}
例子:
\documentclass[
fontsize=14pt,
DIV=12,
headsepline=.5pt,
parskip=half
]{scrartcl}
\usepackage{blindtext}% only for dummy text in the example
\usepackage{fouriernc}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage{tikz}% loads tikz and other packages
\usepackage[onehalfspacing]{setspace}
\usepackage[a4paper,lmargin={5mm},rmargin={5mm},tmargin={25mm},bmargin= {25mm}]{geometry}
\addtolength{\footskip}{-0.8cm}
\usepackage{scrlayer-scrpage}% sets page style scrheadings automatically
\usepackage{hyperref} % Muss ganz zum Schluss geladen werden.
\setkomafont{pagehead}{\normalfont}
\clearpairofpagestyles% <- changed! (outdated command replaced)
\cfoot{\pagemark}
\chead{Title}
\DeclareNewLayer[% define a new layer
background,
head,
contents={%
\tikz\node[opacity=.7,inner sep=0pt,outer sep=0pt]
{\includegraphics[width=\layerwidth,height=\layerheight]{example-image}};%
}
]{myheader}
\begin{document}
\Blindtext
\clearpage
\AddLayersAtBeginOfPageStyle{scrheadings}{myheader}
\Blindtext[2]
\clearpage
\RemoveLayersFromPageStyle{scrheadings}{myheader}
\Blindtext
\end{document}
或者如果该图层应该与每个图层页面样式一起使用:
\documentclass[
fontsize=14pt,
DIV=12,
headsepline=.5pt,
parskip=half
]{scrartcl}
\usepackage{blindtext}% only for dummy text in the example
\usepackage{fouriernc}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage{tikz}% loads tikz and other packages
\usepackage[onehalfspacing]{setspace}
\usepackage[a4paper,lmargin={5mm},rmargin={5mm},tmargin={25mm},bmargin= {25mm}]{geometry}
\addtolength{\footskip}{-0.8cm}
\usepackage{scrlayer-scrpage}% sets page style scrheadings automatically
\usepackage{hyperref} % Muss ganz zum Schluss geladen werden.
\setkomafont{pagehead}{\normalfont}
\clearpairofpagestyles% <- changed! (outdated command replaced)
\cfoot{\pagemark}
\chead{Title}
\DeclareNewLayer[% define a new layer
background,
head,
contents={%
\tikz\node[opacity=.7,inner sep=0pt,outer sep=0pt]
{\includegraphics[width=\layerwidth,height=\layerheight]{example-image}};%
}
]{myheader}
\begin{document}
\Blindtext
\clearpage
\AddLayersAtBeginOfPageStyle{@everystyle@}{myheader}
\Blindtext[2]
\clearpage
\RemoveLayersFromPageStyle{@everystyle@}{myheader}
\Blindtext
\end{document}
结果: