% Latex-Doku Informatik 13.2

\documentclass[a4paper]{article}
\usepackage[german]{babel}
\usepackage[latin1]{inputenc}
\usepackage{fancyhdr}
\usepackage[pdftex]{graphicx}
\usepackage[dvips]{color}
\usepackage[pdftex,colorlinks,pdfauthor={Hanno Rein}]{hyperref}
\usepackage{lastpage}
\pagestyle{fancy}
\fancyhf{}
\fancyhead[L]{\rightmark}
\fancyhead[R]{\LaTeX{}-Einführung Hanno Rein 2003}
\fancyfoot[C]{Seite \thepage\  von \pageref{LastPage}}


\title{\LaTeX{}-Einführung\\ Informatik 13.2 }
\author{\href{http://hanno-rein.de}{Hanno Rein}\\ \href{mailto:latex-13.2@hanno-rein.de}{latex132@hanno-rein.de}}



\begin{document} % Beginn des Textkörpers
  \maketitle
  \newpage
  \tableofcontents
  \newpage
  \section{Grundlegendes}
  \subsection{Warum diese Einführung?}
  
  Der Sinn dieser Einführung besteht nicht darin, aus allen Beteiligten profesionelle \LaTeX{}er zu machen. Sie soll vielmehr die Möglichkeiten und das Potential von \LaTeX{} aufzeigen. Vorallem im Studium und in der Wissenschaft sind Satzsysteme von entscheidender Bedeutung. Die Allgemeine Hochschulreife\footnote{Abitur} beinhaltet allerdings nur proprietäre Textverarbeitungsprogramme wie Microsoft Word und Microsoft Works\footnote{Microsoft ist ein eingetragenes Warenzeichen der Microsoft Corporation}. Der Funktionsumfang und die Stabilität dieser Programme reichen allerdings für große Dokumente keinesfalls aus. Die Einführung schafft einen Überblick und nach Möglichkeit auch den Anreiz sich näher mit der Thematik auseinanderzusetzen.
  
  \newpage
  \subsection{Was ist \LaTeX{}}
  Zunächst einmal: \LaTeX{} ist ein Teil von \TeX{}. Darum beschäftigen wir uns kurz mit \TeX{}. \TeX{} ist kein WYSIWYG-System\footnote{What You See Is What You Get, gesprichen wisiwig}, bei dem man einzelne Textteile mit der Maus am Bildschirm plaziert, wie etwa Microsoft Word. Es ist ein Satzsystem und arbeitet nach folgendem Bearbeitungskonzept:
  
\begin{figure}[h]
	\begin{center}
		\includegraphics{Bild2.jpg}
	\end{center}
	\label{fig:Bild2}
	\caption{Arbeiten mit dem \TeX{} System}
\end{figure}

Das Dokument wird zunächst mit einem beliebigen Editor\footnote{Ich verwende den Windows-Editor TeXnicCenter} bearbeitet. Danach wird die Formatierung veranlasst. Das Ergebnis kann nun auf dem Monitor oder Drucker ausgegeben werden und gegebenenfalls erneut bearbeitet werden.\\[5pt]
\LaTeX{} ist ein Makropaket, dass auf \TeX{} aufsetzt. Dadurch sind viele Arbeitsschritte automatisiert. Es gibt beispielsweise verschiedene Vorlagen an Dokumententypen, wie 
\begin{itemize}
	\item book
	\item article\footnote{Ich verwende beispielsweise in dieser Dokumentation den Typ \textit{article}}
	\item report
\end{itemize}
Ohne \LaTeX{} wäre \TeX{} nahezu unbrauchbar. Erst durch die unzähligen Makropakete ergibt sich der große Funktionsumfang.

\newpage 
  \subsection{Vorraussetzungen}
  \subsubsection{\LaTeX{}-Distributionen}
  Für nahezu jedes Betriebssystem, wie zum Beispiel
  
\begin{itemize}
	\item Linux
	\item Unix
	\item Windows (Windows 95,98,NT,ME,XP und sogar CE)
	\item FreeBSD
	\item DOS
	\item OS/2
	\item Macintosh
\end{itemize}
 gibt es Latex Distributionen. Diese Distributionen, wie etwa MikTeX für Windows erlauben eine einfache Installation und bringen meist auch einen komfortablen (Text-)Editor mit. Eine erste Anlaufstelle auf der Suche nach der passenden Distribution ist die Website der \textit{Deutschsprachige Anwendervereinigung TeX e.V.}\footnote{http://www.dante.de/}. Jegliche benötigte Software ist kostenlos und auch im Quellcode verfügbar. Es handelt sich jedoch nicht um Public Domain, die Rechte liegen bei einer amerikanischen Stiftung.
  \subsubsection{Manuals / Tutorials}
  Da es sich bei \LaTeX{} um eine Markup-Sprache handelt, sind zur Bedienung spezielle Komandos erforderlich. Hierbei helfen professionelle Bücher genauso so, wie im Internet kostenlos zur Verfügung stehende Manuals. Das wohl bekannteste deutsche Tutorial in elektronischer Form ist das \LaTeX{}-Kochbuch\footnote{http://www.uni-giessen.de/hrz/tex/cookbook/cookbook.html}. In Buchform ist \textit{Der \LaTeX{} Wegweiser}\footnote{ISBN 3-8266-0256-0} von Christine Detig zu empfehlen.
\newpage

\section{Beispieldokument}
\subsection{"`Hello World!"' in \LaTeX{}}
Zunächst soll das einfachste aller \LaTeX{}-Dokumente besprochen werden. Das, den unter Programmierern beliebten Satz, "`Hello World!"' ausgibt:
\begin{verbatim}
\documentclass[A4]{article}
\begin{document}
Hello World!
\end{document}
\end{verbatim}Die Ausgabe sieht folgendermaßen aus:\\[15pt]
Hello World!\\[15pt]
Der Befehl \verb|\documentclass[A4]{article}| bestimmt den Typ des Dokuments. In diesem Fall \verb|article|. \verb|A4| ist ein Attribut das übergeben wird und das Seitenformat definiert. Nach \verb|\begin{document}| beginnt der eigentliche Textteil, der mit \verb|\end{document}| wieder endet. Danach werden alle Befehle ignoriert.
Um aus dieser \TeX{}-Datei beispielsweise eine PDF-Datei zu generieren muss es nun formatiert werden. Das geschiet mit folgendem Befehl in der Kommandozeile des Betriebsystems (alle Pfade müssen natürlich gesetzt sein):
\begin{verbatim}
pdflatex Beispiel1.tex
\end{verbatim}
Es erscheinen etwa folgende Ausgaben auf dem Bildschirm:
\begin{verbatim}
This is pdfTeX, Version 3.14159-14f-released-20000525
(MiKTeX 2.1) (preloaded format=latex 2000.11.28) 
**F:/Eigene*Dateien/Informatik/Doku*13.2/Beispiel1.tex
(F:/Eigene Dateien/Informatik/Doku 13.2/Beispiel1.tex{pdftex}
LaTeX2e <2001/06/01>
Babel <v3.7h> and hyphenation patterns for english, french,
german, ngerman, du mylang, nohyphenation, loaded.
(C:\Programme\texmf\tex\latex\base\article.cls
Document Class: article v1.4e Standard LaTeX document class
(C:\Programme\texmf\tex\latex\base\size10.clo
File: size10.clo v1.4e Standard LaTeX file (size option)
)
\c@part=\count79
\c@section=\count80
\c@subsection=\count81
\c@subsubsection=\count82
\c@paragraph=\count83
\c@subparagraph=\count84
\c@figure=\count85
\c@table=\count86
\abovecaptionskip=\skip41
\belowcaptionskip=\skip42
\bibindent=\dimen102
) (Beispiel1.aux)
LaTeX Font Info: Checking defaults for OML/m/it on input line 2
LaTeX Font Info: ... okay on input line 2.
LaTeX Font Info: Checking defaults for T1/m/n on input line 2
LaTeX Font Info: ... okay on input line 2.
LaTeX Font Info: Checking defaults for OT1/m/n on input line 2
LaTeX Font Info: ... okay on input line 2.
LaTeX Font Info: Checking defaults for OMS/m/n on input line 2
LaTeX Font Info: ... okay on input line 2.
LaTeX Font Info: Checking defaults for OMX/m/n on input line 2
LaTeX Font Info: ... okay on input line 2.
LaTeX Font Info: Checking defaults for U/m/n on input line 2
LaTeX Font Info: ... okay on input line 2.

{psfonts.map}] (Beispiel1.aux) )<cmr10.pfb>
Output written on Beispiel1.pdf (1 page, 5386 bytes).
\end{verbatim}
Das Formatieren hat funktioniert und die Datei Beispiel1.pdf wurde von pdflatex erzeugt. Sie kann nun zum Beispiel mit dem Acrobat Reader\footnote{http://www.adobe.com/products/acrobat/readstep2.html} betrachtet werden. Eventueller Fehler müssen in der Ausgangsdatei Beispiel1.tex korrigiert und das Dokument danach neu formatiert werden. 

\begin{figure}[ht]
	\begin{center}
		\includegraphics[scale=1]{screenshot2.jpg}
	\end{center}
	\caption{Ausgabe des Acrobat Readers}
	\label{fig:screenshot1}
\end{figure}


\subsection{Komplexere Strukturen}
Im Rahmen des Projekt wurde ein Programm in C++ geschrieben, das eine Datenbankabfrage (MySQL) durchführt und die Ergebnisse in eine \LaTeX{}-Datei speichert. Diese wird danach automatisch formatiert und als PDF ausgegeben. Hier wird allerdings nur der \LaTeX{}-Code besprochen. Eine gekürzte Fassung ist hier abgedruckt:

\begin{verbatim}
  \documentclass[a4paper]{report}
  \usepackage{amssymb,makeidx}
  \usepackage{german,pslatex,graphicx}
  \usepackage[latin1]{inputenc}
  \begin{document}

  \title{\bf SQUID-Auswertung}
  \author{Hanno Rein (\LaTeX{}) \\
            und \\
          Konstantin Schauwecker (C++) \\
  }
  \date{}
  \maketitle


  \begin{abstract}
   Diese Auswertungen zeigen die Nutzung des Internetzugangs am
   Karl-von-Frisch Gymnasium in Dusslingen. Die personenbezogenen 
   Daten unterliegen dem Datenschutz. Sie dürfen nur im Rahmen 
   einer Strafverfolgung auf Antrag einer ermittelten 
   staatlichen Behörde ausgehändigt werden. Die Daten zeigen 
   den Zeitpunkt des Zugriffs, der angegebene Name, sowie 
   die Klasse und den Ursprung.
  \end{abstract}

  \tableofcontents
  \newpage

  \chapter{Zugriffe (Heute)}
  \section{Sortiert nach Ursprung}
     \begin{tabular}[ht]{l|l|l|l|l}
      IP & Hostname & Name & Klasse & Zugriffszeit\\
     \hline
 \hline
192.168.0.83/- & mobilepda & Hanno Rein & 5 & Tue May 13 
\\
 \hline
192.168.0.149/- & 192.168.0.149 & Tobias Heide & 13b & Tue May 13 
\\
 \hline
192.168.0.143/- & R4 & Fabian Zwiehoff & 6a & Tue May 13 
\\
 weitere Zeilen wurden gelöscht!
  
    \end{tabular}

   \section{Sortiert nach Namen}
     \begin{tabular}[ht]{l|l|l|l|l}
      IP & Hostname & Name & Klasse & Zugriffszeit\\
     \hline
 \hline
192.168.0.129/- & ren & walter RENZ & lehrer & Tue May 13 
\\
 \hline
192.168.0.149/- & 192.168.0.149 & Tobias Heide & 13b & Tue May 13 
\\
 \hline
192.168.0.136/- & R5 & theresa dörr & 6a & Tue May 13 
\\
 weitere Zeilen wurden gelöscht! 
 
    \end{tabular}

   \section{Sortiert nach Zugriffszeit}
     \begin{tabular}[ht]{l|l|l|l|l}
      IP & Hostname & Name & Klasse & Zugriffszeit\\
     \hline
 \hline
192.168.0.149/- & 192.168.0.149 & Tobias Heide & 13b & Tue May 13 
\\
 \hline
192.168.0.136/- & R5 & theresa dörr & 6a & Tue May 13 
\\
 \hline
192.168.0.137/- & R3 & Carolin Riethmüller & 6 & Tue May 13 
\\
 weitere Zeilen wurden gelöscht!
 
     \end{tabular}

\chapter{Zugriffe (Gestern)}
   \section{Sortiert nach Ursprung}
     \begin{tabular}[ht]{l|l|l|l|l}
      IP & Hostname & Name & Klasse & Zugriffszeit\\
     \hline
 \hline
192.168.0.84/- & hf-powerbook & Hartmut & lehrer & Mon May 12
\\
 \hline
192.168.0.84/- & hf-powerbook & Hartmut & lehrer & Mon May 12
\\
 \hline
192.168.0.66/- & 192.168.0.66 & Jürgen Baur & lehrer & Mon May 12
\\
 weitere Zeilen wurden gelöscht!
 
     \end{tabular}

   \section{Sortiert nach Namen}
     \begin{tabular}[ht]{l|l|l|l|l}
      IP & Hostname & Name & Klasse & Zugriffszeit\\
     \hline
 \hline
192.168.0.129/- & ren & walter RENZ & lehrer & Mon May 12 
\\
 \hline
192.168.0.133/- & Lehrerzimmer2 & walter & lehrer & Mon May 12
\\
 \hline
192.168.0.133/- & Lehrerzimmer2 & ute alber & lehrer & Mon May 12
\\
 weitere Zeilen wurden gelöscht!
 
     \end{tabular}
    

   \section{Sortiert nach Zugriffszeit}
     \begin{tabular}[ht]{l|l|l|l|l}
      IP & Hostname & Name & Klasse & Zugriffszeit\\
     \hline
 \hline
192.168.0.130/- & Info14 & Julia Kolb & 8 & Mon May 12 
\\
 \hline
192.168.0.119/- & info16 & Emanuel Schreiner & 9 & Mon May 12 
\\
 \hline
192.168.0.133/- & Lehrerzimmer2 & Hartmut & lehrer & Mon May 12
\\
  weitere Zeilen wurden gelöscht!
  
    \end{tabular}
      
  \chapter{Anlagen}
   \section{Paragraph 268 Datenschutzgesetz}
\begin{quote}
\textbf{Paragraph 268: Fälschung technischer Aufzeichnungen} \\
(1) Wer zur Täuschung im Rechtsverkehr \\

1. eine unechte technische Aufzeichnung herstellt oder eine 
technische Aufzeichnung verfälscht oder \\
2. eine unechte oder verfälschte technische Aufzeichnung 
gebraucht, \\

wird mit Freiheitsstrafe bis zu fünf Jahren oder mit
 Geldstrafe bestraft. \\

(2) Technische Aufzeichnung ist eine Darstellung von Daten, 
Meß- oder Rechenwerten, Zuständen oder Geschehensabläufen, 
die durch ein techniches Gerät ganz oder zum Teil selbsttätig 
bewirkt wird, den Gegenstand der Aufzeichnung allgemein oder
für Eingeweihte erkennen läßt und zum Beweis einer rechtlich 
erheblichen Tatsache bestimmt ist, gleichviel ob ihr die 
Betimmung schon bei der Herstellung oder erst später gegeben 
wird.\\

(3) Der Herstellung einer unechten technischen Aufzeichnung 
steht es gleich, wenn der Täter durch störende Einwirkung auf 
den Aufzeichnungsvorgang das Ergebnis der Aufzeichnung 
beeinflußt. 

(4) Der Versuch ist strafbar. \\

(5) § 267 Abs. 3 und 4 gilt entsprechend
\end{quote}
   \section{Copyright}
    \subsection{Backend}
     \textbf{Tobias Heide}\\
     http://tobias-hei.de\\
     tucks@gmx.de

    \subsection{Frontend}
     \textbf{Hanno Rein}\\
     http://hanno-rein.de\\
     hanno@hanno-rein.de

    \subsection{Auswertung}
     \textbf{Konstantin Schauwecker}\\
     http://konstantin-schauwecker.de\\
     info@konstantin-schauwecker.de \\[5pt]
     und\\[5pt]
     \textbf{Hanno Rein}\\
     http://hanno-rein.de\\
     hanno@hanno-rein.de
  \end{document}
  
\end{verbatim}
\newpage
Man erkennt, dass diese Dokumente leicht unübersichtlich werden. Man kann die einzelnen Teile des Dokuments jedoch in unterschiedlichen Dateien verpacken und somit Ordnung in große Dokumente bringen.\\
\subsubsection{Wichtige Befehle}
Im Zusammenhang mit der Markup-Language \LaTeX{} sind vorallem folgende Punkte zu erwähnen:
\begin{itemize}
	\item Das komplette Inhaltsverzeichnis wird in diesem Beispiel durch den Befehl \verb|\maketitle| erzeugt. Der Benutzer kann sich auf den Inhalt des Dokumentes konzentrieren und muss sich nicht mit Formatierungs-Problemen herumschlagen.
	\item Die Nummerierung der Kapitel wird automatisch erzeugt. Es sind lediglich die Befehle \verb|\chapter \section \subsection \subsubsection| nötig um die einzelnen Ebenen zu definieren.
	\item Eine 3 Spaltige Tabelle lässt sich durch den Befehl \verb|\begin{tabular}| \verb|[ht]{lll}| erzeugen. Neue Zeilen mit \verb|\hline|, neue Spalten mit \verb|&|.
	\item Wird explizit ein Zeilenumbruch gewünscht, so müssen zwei aufeinanderfolgende $\backslash$ ans Ende der Zeile geschrieben werden.
\end{itemize}

\newpage
\section{Schlusssatz}
Das Projekt kann sich auf Grund der zahlreichen Möglichkeiten, die sich durch \LaTeX{} bieten, praktisch unendlich in die Länge ziehen. Es wurden die Grundkenntnisse und Anlaufstellen vermittelt, so dass bei Interesse nun selbstständig weitergearbeitet werden kann.\\
Die kompletten Quelltexte (auch dieser Dokumentation) sind auf der Diskette hinterlegt.

\end{document} 

