Archiv für die Kategorie ‘Pakete’

Beispiel für Arev Sans

Mittwoch, 30. Juni 2010

Arev Sans ist eine Schrift, die sich besonders gut für Beamer-Präsentationen eignet. Mehr Informationen unter http://www.ctan.org/tex-archive/fonts/arev/, hier ein kurzes Beispiel:

\documentclass{scrartcl}
\usepackage[]{arev}
\usepackage[]{blindtext}
\begin{document}
 
\noindent \blindtext
 
$$a^2+b^2=c^2$$
 
\noindent \blindtext
\end{document}

LaTeX-Vorlagen für Diplom-, Master- und Doktorarbeiten

Sonntag, 06. Juni 2010

Hier eine Übersicht von LaTeX-Vorlagen für Diplom-, Master- und Doktorarbeiten mit LaTeX.

  • Übersicht über das Thema auf CTAN CTAN
  • Vorlage der Humboldt-Universiät, Link: HU Berlin, Direktlink
  • Classicthesis CTAN
  • York-Thesis CTAN
  • Diplomarbeit mit LaTeX CTAN
  • Bowling Green State University BSGU
  • Vorlage von Matthias Pospiech Homepage
  • University of Wollongong (wo immer das sein mag…) CTAN
  • Vorlage von Schnorchelfabrik.de Link
  • Vorlage von der ETH Zürich Link
  • Vorlage von der ECE IllinoisLink
  • Übersicht über verschiedene Arbeiten
    http://www.thesis-template.de/

Formulare entwerfen mit LaTeX

Sonntag, 06. Juni 2010

Hier ein kleines Beispiel für das Formular Paket.

\documentclass{scrartcl}
\usepackage{formular}
 
\newFRMfield{Name}{65mm}[Name]
\newFRMfield{Datum}{65mm}[Ort, Datum]
 
\setFRMfontfamily{cmr}
\setFRMfontshape{it}
\setFRMfontsize{12}
\setFRMruledstyle
\newFRMfield{Unterschrift}{70mm}[Unterschrift]
 
\begin{document}
 
\useFRMfield{Name}[Max Mustermann]
\useFRMfield{Datum}[Berlin, den 06.06.2010]\vspace{3cm}
 
\useFRMfield{Unterschrift}[]
 
\end{document}

LaTeX-Formulare mit eforms erstellen

Montag, 24. Mai 2010

Hier ein kurzes Beispiel für das eforms-Paket:

\documentclass[12pt]{scrartcl}
\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc}
\usepackage[ngerman]{babel}
\usepackage{hyperref}
\usepackage[pdftex]{eforms}
\begin{document}
\begin{Form}
 
\begin{tabular}{rl}
	\checkBox{a}{12pt}{12pt}{a} & Hallo Welt \\
\end{tabular}
 
\end{Form}
\end{document}

Schicke Tabellen mit TikZ

Dienstag, 27. April 2010

Hier ein schönes Beispiel, wie man sehr bunte Tabellen mit LaTeX und TikZ erstellen kann: http://texblog.net/latex-archive/graphics/tikz-table/

Biblatex unter MikTeX installieren

Samstag, 24. April 2010

Da MikTeX noch kein BibLaTeX mitbringt, muss es manuell installiert werden. Hier eine kurze Anleitung, wie es bei mir funktioniert hat.

  1. Ein localtexmf Verzeichnis auf der Festplatte anlegen (falls man es eh nicht schon einmal getan hat), bei mir c:\localtexmf
  2. Die biblatex.zip Datei enthält einen Ordner mit drei Unterordnern (bibtex, doc, latex). In c:\localtexmf legt man jetzt folgende Ordner an: bibtex, doc\biblatex, und tex\latex.
  3. Jetzt kopiert man einfach die entsprechenden Unterordner aus der Zip-Datei in die Unterordner des localtexmf
  4. In den MikTeX Einstellungen noch das neue Root hinzufügen (MikTeX durchsucht das automatisch, wenn ich es richtig sehe, ein extra “Refresh Filename DB” kann wohl unterbleiben)
  5. Die Beispiele aus dem examples Ordner in doc sollten jetzt funktionieren.

Klausuren erstellen mit eqexam – Teil 1

Sonntag, 18. April 2010

Mit dem eqexam Paket von D.P. Story, dem Entwickler von AcroTeX, kann man recht einfach Klausuren und Tests in LaTeX entwerfen. Hier mal ein Beispiel, entstanden aus einem Artikel in der DTK, Ausgabe 1/2010, und freundlicher Hilfe aus d.c.t.t:

\documentclass{article}
\usepackage{eqexam}
\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}
\begin{document}
 
\begin{exam}[Part I.]{Part1}
\begin{problem}
Hallo Welt!
\begin{solution}
Hello World!
\end{solution}
\end{problem}
\end{exam}
\end{document}

Ausgehend von diesem Beispiel werd ich mich mal daran machen, a) einen meiner alten Klausurtexte aus Humboldt-Zeiten umzusetzen b) die Möglichkeiten abschätzen, ob sich auch benutzer-spezifische Klausuren generieren lassen.

Pocketmod mit LaTeX erstellen

Donnerstag, 15. April 2010

Momentan bin ich dabei, mit LaTeX ein Pocketmod zu erstellen, einen Papier-Organizer der durch geschicktes Schneiden und Falten einer DIN A4 Seite entsteht: http://repocketmod.com/.

Da die Ausrichtung und Anordung der acht Seiten auf dem Blatt sehr individuell ist, verspricht dies recht interessant zu werden. Hier mein bisheriges Ergebnis:

Das Dokument zur Ausgabe eines 8-Seiten PDFs auf einer Seite:

\documentclass{scrartcl}
\usepackage[screen,paperheight=21cm,paperwidth=29.7cm,
 left=0mm,right=0mm,top=0mm,bottom=0mm]{geometry}
\usepackage[]{pdfpages}
\begin{document}
 
\includepdf[pages=-,nup=4x2,scale=1,frame=true]%
{8seitentext2.pdf}
 
\end{document}

Ein erstes Beispiel (ohne rotierte Seiten) für den umzuarrangierenden Text:

\documentclass{scrartcl}
\usepackage{forloop}
\usepackage{graphicx}
\pagestyle{empty}
\newcounter{ct} 
\begin{document}
 
\forloop{ct}{1}{\value{ct} < 9}{%
\begin{center}
\scalebox{80}{\thepage}
\end{center}
\clearpage
}
\end{document}

Der Text mit richtiger Ausrichtung und Anordnung der Seiten:

\documentclass{scrartcl}
\usepackage[]{graphicx}
\pagestyle{empty}
\newcounter{ct} 
\begin{document}
\begin{center}
\scalebox{40}{6}
\end{center}
\clearpage
\begin{center}
\scalebox{40}{7}
\end{center}
\clearpage
\begin{center}
\scalebox{40}{8}
\end{center}
\clearpage
\begin{center}
\scalebox{40}{1}
\end{center}
\clearpage
\begin{center}
\scalebox{40}{\rotatebox{180}{5}}
\end{center}
\clearpage
\begin{center}
\scalebox{40}{\rotatebox{180}{4}}
\end{center}
\clearpage
\begin{center}
\scalebox{40}{\rotatebox{180}{3}}
\end{center}
\clearpage
\begin{center}
\scalebox{40}{\rotatebox{180}{2}}
\end{center}
\clearpage
\end{document}

Da mich meine LaTeX-Kenntnisse verlassen, hab ich mal in de.comp.text.tex gepostet.

Nachtrag: Der Hinweis aus d.c.t.t auf pdfjamund pdfjam-pocketmod,ein in pdfjam verfügbares Skript hat mich an pdftk erinnert, das auch unter Windows läuft. Hier die Lösung:

% Zerlegen der PDF Datei
pdftk 8seitentext.pdf burst

% Rotieren der vier Seiten um 180 Grad
pdftk pg_0005.pdf cat 1-endS output out5.pdf

pdftk pg_0004.pdf cat 1-endS output out4.pdf

pdftk pg_0003.pdf cat 1-endS output out3.pdf

pdftk pg_0002.pdf cat 1-endS output out2.pdf

% Mergen in der richtigen Reihenfolge
pdftk pg_0006.pdf pg_0007.pdf pg_0008.pdf pg_0001.pdf out5.pdf ou
t4.pdf out3.pdf out2.pdf cat output fertig.pdf

Dieses Dokument wird dann über das pdfpages Paket zu 8 auf 1 Seite eingebunden

\documentclass{scrartcl}
\usepackage[screen,paperheight=21cm,paperwidth=29.7cm, left=0mm,right=0mm,top=0mm,bottom=0mm]{geometry}
\usepackage[]{pdfpages}
\begin{document}
 
\includepdf[pages=-,nup=4x2,scale=1,frame=true]{fertig.pdf}
 
\end{document}

Eine aufwändigere, aber elegantere Lösung, die innerhalb eines LaTeX-Laufs erledigt werden kann, ist die folgende. Sie nutzt das pgfpagesPaket von Till Tantau, das in den Ausgabeprozess der einzelnen Seiten eingreift:

\documentclass[21pt]{scrartcl}
\usepackage[]{forloop}
\usepackage[]{blindtext}
\setlength{\parindent}{0pt}
\usepackage[]{lmodern}
\newcounter{ct} 
\usepackage{pgfpages}
 
  \edef\pgfpageoptionheight{\the\paperwidth} % landscaped by default
  \edef\pgfpageoptionwidth{\the\paperheight}
  \def\pgfpageoptionborder{0pt}
  \def\pgfpageoptionfirstshipout{1}
 
  \pgfpagesphysicalpageoptions
  {%
    logical pages=8,%
    physical height=\pgfpageoptionheight,%
    physical width=\pgfpageoptionwidth,%
    current logical shipout=\pgfpageoptionfirstshipout%
  }
 
    \pgfpageslogicalpageoptions{1}
    {%
      border shrink=\pgfpageoptionborder,%
      resized width=.25\pgfphysicalwidth,%
      border code=\pgfusepath{stroke},%
      resized height=0.5\pgfphysicalheight,%
      center=\pgfpoint{.875\pgfphysicalwidth}{.75\pgfphysicalheight}%
    }%
    \pgfpageslogicalpageoptions{2}
    {%
      border shrink=\pgfpageoptionborder,%
      resized width=.25\pgfphysicalwidth,%
      border code=\pgfusepath{stroke},%
      rotation=180,%      
      resized height=0.5\pgfphysicalheight,%
      center=\pgfpoint{.875\pgfphysicalwidth}{.25\pgfphysicalheight}%
    }%
 
    \pgfpageslogicalpageoptions{3}
    {%
      border shrink=\pgfpageoptionborder,%
      resized width=.25\pgfphysicalwidth,%
      border code=\pgfusepath{stroke},%
      rotation=180,%      
      resized height=0.5\pgfphysicalheight,%
      center=\pgfpoint{.625\pgfphysicalwidth}{.25\pgfphysicalheight}%
    }%
    \pgfpageslogicalpageoptions{4}
    {%
      border shrink=\pgfpageoptionborder,%
      resized width=.25\pgfphysicalwidth,%
      border code=\pgfusepath{stroke},%
      rotation=180,%      
      resized height=0.5\pgfphysicalheight,%
      center=\pgfpoint{.375\pgfphysicalwidth}{.25\pgfphysicalheight}%
    }%
 
    \pgfpageslogicalpageoptions{5}
    {%
      border shrink=\pgfpageoptionborder,%
      resized width=.25\pgfphysicalwidth,%
      border code=\pgfusepath{stroke},%
      rotation=180,%
      resized height=0.5\pgfphysicalheight,%
      center=\pgfpoint{.125\pgfphysicalwidth}{.25\pgfphysicalheight}%
    }%
    \pgfpageslogicalpageoptions{6}
    {%
      border shrink=\pgfpageoptionborder,%
      resized width=.25\pgfphysicalwidth,%
      border code=\pgfusepath{stroke},%
      resized height=0.5\pgfphysicalheight,%
      center=\pgfpoint{.125\pgfphysicalwidth}{.75\pgfphysicalheight}%
    }%
 
    \pgfpageslogicalpageoptions{7}
    {%
      border shrink=\pgfpageoptionborder,%
      resized width=.25\pgfphysicalwidth,%
      border code=\pgfusepath{stroke},%
      resized height=0.5\pgfphysicalheight,%
      center=\pgfpoint{.375\pgfphysicalwidth}{.75\pgfphysicalheight}%
    }%
    \pgfpageslogicalpageoptions{8}
    {%
      border shrink=\pgfpageoptionborder,%
      resized width=.25\pgfphysicalwidth,%
      border code=\pgfusepath{stroke},%
      resized height=0.5\pgfphysicalheight,%
      center=\pgfpoint{.625\pgfphysicalwidth}{.75\pgfphysicalheight}%
    }%
 
 
\begin{document}
 
\forloop{ct}{1}{\value{ct} < 9}{%
\blindtext
\clearpage
 
}
\end{document}

Nachtrag 2: Meine pgfpages-Version weist einen Fehler beim Rotieren von Seiten auf, der durch folgenden Patch der pgfpages.sty behoben werden kann.

        % alt, geht nicht
        %\expandafter\ifx\csname pgfpages@p@\the\pgf@cpn @rotation\endcsname\relax%
         % \pgfscope%
        %\else%
         % \pgflowlevel{\pgftransformrotate{\csname pgfpages@p@\the\pgf@cpn @rotation\endcsname}}%
        %\fi%

        \pgfscope% geht
				\expandafter\ifx\csname pgfpages@p@\the\pgf@cpn @rotation\endcsname\relax%
        	\else%
          \pgflowlevel{\pgftransformrotate{\csname pgfpages@p@\the\pgf@cpn @rotation\endcsname}}%
        \fi%

Das Spreadtab-Paket Teil 4

Montag, 15. März 2010

Von Christian Tellechea, dem Autor von Spreadtab, habe ich als Kommentar zum dritten Teil noch einige Tipps bekommen, die ich mir sonst hätte mühsam zusammensuchen müssen. Da sein Beispiel im Kommentar aufgrund fehlender geschweifter Klammern nicht fehlerfrei durchlief, kommt hier eine bereinigte Version.

\documentclass{scrartcl}
\usepackage{spreadtab}
\usepackage{eurosym}
\usepackage{numprint}
\begin{document}
\STsetdecimalsep{,}% set the decimal separator to ,
\nprounddigits{2}% set the number of digit of the decimal part
\begin{spreadtab}[\STsavecell{\myresult}{d6}]{{tabular}{rrN{2}{2}N{2}{2}}}
@ Artikel & @ Anzahl & {@ Preis}& {@ Summe} \\ \hline
@Brot & 1.00 & :={2.00}\,\euro & :={[-1,0]*[-2,0]}\,\euro \\
@Butter & 2.00 & :={3.67}\,\euro & :={[-1,0]*[-2,0]}\,\euro  \\
@Milch & 3.00 & :={4.00}\,\euro & :={[-1,0]*[-2,0]}\,\euro \\
@Wein & 4.00 & :={5.00}\,\euro & :={[-1,0]*[-2,0]}\,\euro \\ \hline
 &     & {@Summe}     & :={sum(d1:[0,-1])}\,\euro  \\ \hline \hline
\end{spreadtab}
 
Die Gesamtsumme ist \numprint{\myresult}\,\euro.
 
\end{document}

Hinweis: Das Beispiel war fehlerhaft und hat ab D1 summiert, anstatt von D1. Im Quellcode hab ich es ausgetauscht, das richtige Ergebnis ist natürlich 41,34 Euro.

Ebenen in pdfLaTeX ansteuern

Montag, 15. März 2010

Per Zufall bin ich eben über ein (noch nicht auf CTAN vorhandenes) Paket gestolpert, über das man Ebenen einer PDF-Datei ansteuern kann.

URL: http://user.mendelu.cz/marik/latex/ocgtools/

Beispiel: http://user.mendelu.cz/marik/latex/ocgtools/beamer.pdf

Nachtrag: Das Paket ist jetzt auch auf CTAN.