这是我执行的代码:
%Template for Technical Document
\documentclass[a4paper]{book}
\input{preamble/pakages.tex}
\input{preamble/quotations.tex}
\input{preamble/chapter_section_name_styling.tex}
\input{preamble/chapter_styling.tex}
\input{preamble/page_layout.tex}
\begin{document}
\input{articles/backtrack_linux.tex}
\end{document}
我得到的输出(前两页是空白的,带有水印,草稿附加到页面,节点仅出现在第一页):
实际上我想将这段代码附加到我的文件中:TikZ 圆圈节点“Cybyrus14”
在对几个文件进行更改之前,代码执行良好。我在这些文件中进行了以下更改,或者说我怀疑这些文件中存在问题:
page_layout.tex 文件:
\usetikzlibrary{calc,chains,positioning}
\fancypagestyle{plain}{
\fancyhf{}
\fancyfoot[LE,RO]{\tikz[baseline={(0,0)},anchor=center]
\node[label={center:\thepage},inner sep=0pt,outer sep=0pt]{\includegraphics[scale=.25]{images/apple}};}%
\renewcommand{\footrulewidth}{0.4pt}
\renewcommand{\headrulewidth}{0.0pt}
}
\fancypagestyle{myfancy}{
\fancyhf{}
\fancyhead[LE,RO]{\slshape\nouppercase{\leftmark}}
\fancyfoot[LE,RO]{\tikz[baseline={(0,0)},anchor=center] \node[label={center:\thepage},inner sep=0pt,outer sep=0pt]{\includegraphics[scale=.25]{images/apple}};}%
\renewcommand{\headrulewidth}{0.4pt}
\renewcommand{\footrulewidth}{0.4pt}
}
\newcounter{thepagenum}
\setcounter{thepagenum}{0}
% Set highest row number to access
% '11' here because there are 11 rows in the .csv
\def\pagelimit{11}
\newcommand{\setquoteandauthor}{%
\parbox[c][0.9cm][b]{\dimexpr\textwidth-4.5cm\relax}{%\centering
\emph{\QValue} \hfill --- \AValue}}%
\AddEverypageHook{%
\ifnum\pdfstrcmp{\arabic{thepagenum}}{\pagelimit}=0
\setcounter{thepagenum}{0}%
\else
\fi
\stepcounter{thepagenum}
\DTLgetvalue{\QValue}{quotes}{\arabic{thepagenum}}{1}%
% Author info too?
\DTLgetvalue{\AValue}{quotes}{\arabic{thepagenum}}{2}%
% \fancyfoot[cf]{``\QValue'' --- \AValue}%
\fancyfoot[cf]{\setquoteandauthor}}
\let\oldcleardoublepage\cleardoublepage
\renewcommand{\cleardoublepage}{\afterpage{\thispagestyle{empty}}\oldcleardoublepage}
\pagestyle{myfancy}
\renewcommand{\chaptermark}[1]{\markboth{#1}{}}
\newwatermark[allpages,color=red!50,scale=3,xpos=0,ypos=0]{\transparent{0.2}\includegraphics[scale=.25]{images/logo}}
\usetikzlibrary{calc,positioning}
\tikzset{mynode/.style={anchor=center,circle,fill=magenta,text=white,font=\sffamily,scale=2,inner
sep=2pt,minimum width=0.6cm}}
\newsavebox\mybox
\savebox\mybox{%
\begin{tikzpicture}[node distance=.1cm]
\node[mynode] (c) {C};
\node[mynode,below=of c] (y1) {Y};
\node[mynode,below=of y1] (b) {B};
\node[mynode,below=of b] (y2) {Y};
\node[mynode,below=of y2] (r) {R};
\node[mynode,below=of r] (u) {U};
\node[mynode,below=of u] (s) {S};
\node[mynode,below=of s] (1) {1};
\node[mynode,below=of 1] (4) {4};
\end{tikzpicture}%
}
为了便于编译,我宁愿提供我的所有其他文件:
章节名称_样式.tex
\usetikzlibrary{shapes.misc,arrows}
\newcommand\titlebar{%
\tikz[baseline,trim left=0.5cm,trim right=2.5cm] {%
\node [
text = red!70!green,
anchor= base east,
minimum height=3.5ex] (a) at (2.5cm,0.6ex) {%
};
\path[fill=red!70!blue] (a.east) circle (.5ex);
\draw[color=red!70!blue, thick,rounded corners=1ex] (a.east) |- (\textwidth+3cm,-0.75ex);
}%
}
\newcommand\subtitlebar{%
\tikz[baseline,trim left=1cm,trim right=3.05cm] {%
\node[
text = red!70!green,
anchor= base east,
minimum height=3.5ex] (b) at (3.05cm,0.6ex) {%
};
\path[fill=red!70!blue] (b.east) circle (.5ex);
\draw[color=red!70!blue, thick,rounded corners=1ex] (b.east) |- (\textwidth+2cm,-0.75ex);
}%
}
\titleformat{\subsection}{\normalfont\sf}{\subtitlebar}{0.2cm}{\textcolor{blue!60!green}{#1}}
\titlespacing*{\subsection}{-2cm}{3.5ex plus 1ex minus .2ex}{2.3ex plus .2ex}
\titlespacing*{name=\subsection,numberless}{0cm}{3.5ex plus 1ex minus .2ex}{2.3ex plus .2ex}
\renewcommand*{\thesubsection}{\arabic{subsection}}
\titleformat{\section}{\large\sf}{\titlebar}{0.25cm}{\textcolor{blue!60!green}{#1}}
\titlespacing*{\section}{-2.15cm}{3.5ex plus 1ex minus .2ex}{2.3ex plus .2ex}
\titlespacing*{name=\section,numberless}{0cm}{3.5ex plus 1ex minus .2ex}{2.3ex plus .2ex}
\renewcommand*{\thesection}{\arabic{section}}
章节样式.tex:
\newcommand\chapterauthor[1]{\authortoc{#1}\printchapterauthor{#1}}
\WithSuffix\newcommand\chapterauthor*[1]{\printchapterauthor{#1}}
\makeatletter
\newcommand{\printchapterauthor}[1]{%
{\parindent0pt\vspace*{-25pt}%
\linespread{1.5}\large\scshape\filcenter #1%
\par\nobreak\vspace*{35pt}}
\@afterheading%
}
\newcommand{\authortoc}[1]{%
\addtocontents{toc}{\vskip-10pt}%
\addtocontents{toc}{%
\protect\contentsline{chapter}%
{\hskip1.3em\mdseries\scshape\protect\scriptsize#1}{}{}}
\addtocontents{toc}{\vskip5pt}%
}
\makeatother
\titleformat{\chapter}[display]
{\bfseries\Large}
% {\filright\MakeUppercase{\chaptertitlename}\Huge\thechapter}
{}
{1ex}
{\titlerule\vspace{1ex}\filcenter #1}
[\vspace{1ex}\titlerule]
包.tex:
\usepackage{graphicx}
\usepackage[explicit]{titlesec}
\usepackage{tikz}
\usepackage{suffix}
\usepackage{fancyhdr}
\usepackage[a4paper,margin=1in,includefoot,footskip=1in,bindingoffset=0.2in,centering,headheight=0.3in,heightrounded]{geometry}
\usepackage[printwatermark]{xwatermark}
\usepackage{xcolor}
\usepackage{transparent}
\usepackage{filecontents}
\usepackage[T1]{fontenc}
\usepackage{everypage}
\usepackage{datatool}
\usepackage{microtype}
\usepackage{afterpage}
\usepackage{background}
\usepackage{pgfornament}
\usepackage{ifoddpage}
引文.tex:
\begin{filecontents}{csv_files/quotations.csv}
I\space think everybody in this country should learn how to program a computer because it teaches you how to think.; Steve Jobs
Computer Science is no more about computers than astronomy is about telescopes.; Edsger W. Dijkstra
The computer was born to solve problems that did not exist before.; Bill Gates
A\space computer would deserve to be called intelligent if it could deceive a human into believing that it was human.; Alan Turing
UNIX is basically a simple operating system but you have to be a genius to understand the simplicity.; Dennis Ritchie
Imagination is more important than knowledge. For knowledge is limited, whereas imagination embraces the entire world, stimulating progress, giving birth to evolution.; Albert Einstein
The greatest enemy of knowledge is not ignorance, it is the illusion of knowledge.; Stephen Hawking
The more you know, the more you realize you know nothing.; Socrates
Tell me and I forget. Teach me and I remember. Involve me and I learn.; Benjamin Franklin
Real knowledge is to know the extent of one's ignorance.; Confucius
I~do not fear computers. I fear lack of them.; Isaac Asimov
\end{filecontents}
\DTLsetseparator{;}
\DTLloaddb[noheader,keys={quote,author}]{quotes}{csv_files/quotations.csv}
backtrack_linux.tex:
\begin{tikzpicture}[remember picture, overlay]
\node at ($(current page.east)+(-0.5in,0)$) {\usebox\mybox};
\end{tikzpicture}
\chapter{Install Backtrack on an Android Device}
\chapterauthor*{K.DINESH KUMAR \par II Year B.Tech CSE}
\section{What is Backtrack?}
BackTrack is a distribution designed by Jason Dennis based on the Ubuntu Linux distribution aimed at digital forensics and penetration testing use. BackTrack provides users with easy access to a comprehensive and large collection of security-related tools ranging from port scanners to Security Audit. Support for Live CD and Live USB functionality allows users to boot BackTrack directly from portable media without requiring installation, though permanent installation to hard disk and network is also an option.\par
\section{Security Tools in Backtrack}
BackTrack includes many well known security tools including:
\begin{itemize}
\item Metasploit for integration
\item Wi-Fi drivers supporting monitor mode (rfmon mode) and packet injection
\item Aircrack-ng
\item Gerix Wifi Cracker
\item Kismet
\item Nmap
\item Ophcrack
\item Ettercap
\item Wireshark (formerly known as Ethereal)
\item BeEF (Browser Exploitation Framework)
\item Hydra
\item OWASP Mantra Security Framework, a collection of hacking tools, add-ons and scripts based on FirefoX.
\item Cisco OCS Mass Scanner, a very reliable and fast scanner for Cisco routers with telnet and enabling of a default password.
\end{itemize}
\section{Installing Backtrack on Android Device}
\subsection{Tools Required}
\begin{enumerate}
\item Backtrack 5 ARM.\\
Download Backtrack 5 ARM from Backtrack official site. Backtrack with ARM architecture only on Backtrack 5 version. ARM architecture not available for Backtrack 5 R1, Backtrack 5 R2, and Backtrack 5 R3.
\item Rooted android device \\
Why rooted android device ? Because we need install some application that need Android to be root
\item Busybox, Superuser, Terminal Emulator, and AndroidVNC. \\
You can download search and all of them on Google Play. BusyBox is installer and uninstaller Android program, Superuser is superuser rights manager for Android, Terminal Emulator is Android's built-in Linux command line shell program, and AndroidVNC is a VNC viewer for Android.
\end{enumerate}
\subsection{Installation}
\begin{enumerate}
\item Extract BT5-GNOME-ARM.7z to folder, for example "BT5" folder and then put on device root directory.
\item Open Terminal Emulator on device then go to BT5 folder using the command \verb+ cd sdcard/BT5 +
\item Then run this following command \verb+ su + and \verb+ sh bootbt + and you will see \verb+ root@localhost +
\item Now lets run Backtrack GUI with VNC viewer \verb+startvnc+
\item To connect wth VNC we must know the port where VNC listening. Run \verb+netstat -anpt+ and remember the port where VNC listening. In this case the port is 59016. Open AndroidVNC and fill the form like this: \\
Nickname : BT5\\
Password : toortoor\\
Address : 127.0.0.1\\
Port : 5901 \\
\item Connect it and you will see Backtrack 5 interface \par
\textit{Remember! Some of the Backtrack tools can't work properly and do it for your own risk. I hope you can Install Backtrack on Android device without any problems, tell me if you get problems.}
\end{enumerate}
quotes.csv 文件:
%% LaTeX2e file `csv_files/quotations.csv'
%% generated by the `filecontents' environment
%% from source `technical' on 2014/02/11.
%%
I\space think everybody in this country should learn how to program a computer because it teaches you how to think.; Steve Jobs
Computer Science is no more about computers than astronomy is about telescopes.; Edsger W. Dijkstra
The computer was born to solve problems that did not exist before.; Bill Gates
A\space computer would deserve to be called intelligent if it could deceive a human into believing that it was human.; Alan Turing
UNIX is basically a simple operating system but you have to be a genius to understand the simplicity.; Dennis Ritchie
Imagination is more important than knowledge. For knowledge is limited, whereas imagination embraces the entire world, stimulating progress, giving birth to evolution.; Albert Einstein
The greatest enemy of knowledge is not ignorance, it is the illusion of knowledge.; Stephen Hawking
The more you know, the more you realize you know nothing.; Socrates
Tell me and I forget. Teach me and I remember. Involve me and I learn.; Benjamin Franklin
Real knowledge is to know the extent of one's ignorance.; Confucius
I~do not fear computers. I fear lack of them.; Isaac Asimov
图像 :
我想要每个页面上的节点以及右侧页面的节点以及左侧页面的节点。
答案1
您必须在page_layout.tex
文件中添加这些内容:
\tikzset{mynode/.style={anchor=center,circle,fill=magenta,text=white,font=\sffamily,scale=2,inner
sep=2pt,minimum width=0.6cm}}
\newsavebox\mybox
\savebox\mybox{%
\begin{tikzpicture}[node distance=.1cm]
\node[mynode] (c) {C};
\node[mynode,below=of c] (y1) {Y};
\node[mynode,below=of y1] (b) {B};
\node[mynode,below=of b] (y2) {Y};
\node[mynode,below=of y2] (r) {R};
\node[mynode,below=of r] (u) {U};
\node[mynode,below=of u] (s) {S};
\node[mynode,below=of s] (1) {1};
\node[mynode,below=of 1] (4) {4};
\end{tikzpicture}%
}
\backgroundsetup{
scale=1,
opacity=1,
angle=0,
color=black,
contents={%
\checkoddpage
\ifoddpage
\begin{tikzpicture}[remember picture,overlay]
\node at ($(current page.east)+(-0.5in,0)$) {\usebox\mybox};
\end{tikzpicture}%
\else
\begin{tikzpicture}[remember picture,overlay]
\node at ($(current page.west)+(0.5in,0)$) {\usebox\mybox};
\end{tikzpicture}%
\fi
}
}
您尚未添加
\backgroundsetup{.
.
.
.
}
Draft
部分。这就是您进入页面的原因。然后删除
\begin{tikzpicture}[remember picture, overlay]
\node at ($(current page.east)+(-0.5in,0)$) {\usebox\mybox};
\end{tikzpicture}
来自backtrack_linux.tex
文件。
MWE 将是:
\documentclass[12pt]{article}
\usepackage{background}
\usepackage{pgfornament}
\usepackage{lipsum}
\usetikzlibrary{calc,positioning}
\usepackage[a4paper,margin=1in,bindingoffset=0.2in,heightrounded]{geometry}
\usepackage{ifoddpage}
\tikzset{mynode/.style={anchor=center,circle,fill=magenta,text=white,font=\sffamily,scale=2,inner
sep=2pt,minimum width=0.6cm}}
\newsavebox\mybox
\savebox\mybox{%
\begin{tikzpicture}[node distance=.1cm]
\node[mynode] (c) {C};
\node[mynode,below=of c] (y1) {Y};
\node[mynode,below=of y1] (b) {B};
\node[mynode,below=of b] (y2) {Y};
\node[mynode,below=of y2] (r) {R};
\node[mynode,below=of r] (u) {U};
\node[mynode,below=of u] (s) {S};
\node[mynode,below=of s] (1) {1};
\node[mynode,below=of 1] (4) {4};
\end{tikzpicture}%
}
\backgroundsetup{
scale=1,
opacity=1,
angle=0,
color=black,
contents={%
\checkoddpage
\ifoddpage
\begin{tikzpicture}[remember picture,overlay]
\node at ($(current page.east)+(-0.5in,0)$) {\usebox\mybox};
\end{tikzpicture}%
\else
\begin{tikzpicture}[remember picture,overlay]
\node at ($(current page.west)+(0.5in,0)$) {\usebox\mybox};
\end{tikzpicture}%
\fi
}
}
\begin{document}
\lipsum[1-40]
\end{document}