Archive for the ‘Pakete’ Category.

Bilder mit lpic beschriften

Mit dem neuen lpic Paket (TeXLive hat es schon, MikTeX meines Erachtens noch nicht) lassen sich recht einfach Bilder nachträglich beschriften. Hier ein Beispiel:

\documentclass{scrartcl}
\usepackage[ansinew]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel}
\usepackage[]{lpic}
\author{Uwe Ziegenhagen}
\title{}
\begin{document}
 
\begin{figure}
\centering
\begin{lpic}[grid,coords(20)]{Arduino}
\lbl[t]{12,40;\textcolor{green}{\small \textbf{USB-Port}}}
\lbl[t]{19,20;\textcolor{green}{\textbf{9--12V}}}
\lbl[t]{55,20;\textcolor{green}{\textbf{ATMega 328}}}
\end{lpic}
\caption{Arduino Duemilanove}
\end{figure}
\end{document}

Benötigt wird noch die Datei Arduino.pdf

Uwe

Uwe Ziegenhagen likes LaTeX and Python, sometimes even combined. Do you like my content and would like to thank me for it? Consider making a small donation to my local fablab, the Dingfabrik Köln. Details on how to donate can be found here Spenden für die Dingfabrik.

More Posts - Website

Beispiel für Arev Sans

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}

Uwe

Uwe Ziegenhagen likes LaTeX and Python, sometimes even combined. Do you like my content and would like to thank me for it? Consider making a small donation to my local fablab, the Dingfabrik Köln. Details on how to donate can be found here Spenden für die Dingfabrik.

More Posts - Website

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

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, siehe dazu auch das arsclassica Paket
  • 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
  • Vorlage von der University of OregonLink
  • Übersicht über verschiedene Arbeiten
    http://www.thesis-template.de/
  • Vorlage für Jura Hausarbeiten von Martin Sievers: Link
  • University of Electronic Science and Technology of China: Link

Uwe

Uwe Ziegenhagen likes LaTeX and Python, sometimes even combined. Do you like my content and would like to thank me for it? Consider making a small donation to my local fablab, the Dingfabrik Köln. Details on how to donate can be found here Spenden für die Dingfabrik.

More Posts - Website

Formulare entwerfen mit LaTeX

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}

Uwe

Uwe Ziegenhagen likes LaTeX and Python, sometimes even combined. Do you like my content and would like to thank me for it? Consider making a small donation to my local fablab, the Dingfabrik Köln. Details on how to donate can be found here Spenden für die Dingfabrik.

More Posts - Website

LaTeX-Formulare mit eforms erstellen

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}

Uwe

Uwe Ziegenhagen likes LaTeX and Python, sometimes even combined. Do you like my content and would like to thank me for it? Consider making a small donation to my local fablab, the Dingfabrik Köln. Details on how to donate can be found here Spenden für die Dingfabrik.

More Posts - Website

Schicke Tabellen mit TikZ

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

Uwe

Uwe Ziegenhagen likes LaTeX and Python, sometimes even combined. Do you like my content and would like to thank me for it? Consider making a small donation to my local fablab, the Dingfabrik Köln. Details on how to donate can be found here Spenden für die Dingfabrik.

More Posts - Website

Biblatex unter MikTeX installieren

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.

Uwe

Uwe Ziegenhagen likes LaTeX and Python, sometimes even combined. Do you like my content and would like to thank me for it? Consider making a small donation to my local fablab, the Dingfabrik Köln. Details on how to donate can be found here Spenden für die Dingfabrik.

More Posts - Website

Klausuren erstellen mit eqexam – Teil 1

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.

Uwe

Uwe Ziegenhagen likes LaTeX and Python, sometimes even combined. Do you like my content and would like to thank me for it? Consider making a small donation to my local fablab, the Dingfabrik Köln. Details on how to donate can be found here Spenden für die Dingfabrik.

More Posts - Website

Pocketmod mit LaTeX erstellen

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% 

Uwe

Uwe Ziegenhagen likes LaTeX and Python, sometimes even combined. Do you like my content and would like to thank me for it? Consider making a small donation to my local fablab, the Dingfabrik Köln. Details on how to donate can be found here Spenden für die Dingfabrik.

More Posts - Website

Das Spreadtab-Paket Teil 4

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.

Uwe

Uwe Ziegenhagen likes LaTeX and Python, sometimes even combined. Do you like my content and would like to thank me for it? Consider making a small donation to my local fablab, the Dingfabrik Köln. Details on how to donate can be found here Spenden für die Dingfabrik.

More Posts - Website