Perfekte Druckausgabe mit LaTeX und FileMaker Einführung in LaTeX und Herausforderungen Dr. Adam G. Augustin www.agametis.de
Über Mich Studium der Mathematik mit Schwerpunkt Technik (Datenbanktechnik) Promotion in Elektrotechnik über thermische Modellierung in Halbleiterbauelementen Seit 2010 selbständiger FileMaker-Entwickler Koautor beim Blog http://the-tao-of-filemaker.com Aktives Mitglied des münchener FileMaker-Stammtisches Freier Mitarbeiter bei DTO in München Homepage: www.agametis.de, Email: info@agametis.de Twitter: @agametis, Xing
Wunsch und Wirklichkeit FileMaker bietet jetzt endlich eine lesbare Ausgabe......mit LaTeX
Was erwartet Sie Was ist LaTeX und was ist es nicht Einführung in das LaTeX-System (Wie arbeitet LaTeX) LaTeX Grundlagen (Wie erstellt man ein Dokument) Das erste Dokument in LaTeX Wie kommuniziert FileMaker mit LaTeX Besonderheiten im Zusammenspiel zwischen FileMaker und LaTeX Voraussetzungen schaffen (Wann ist es möglich/sinnvoll LaTeX einzusetzen) Unser Ziel Nach dem Vortrag (und Workshop) können Sie ein LaTeX-System in Betrieb nehmen und mit FileMaker LaTeX/Pdf-Dokumente erstellen
Was ist LaTeX Quelle: Wikipedia Softwarepaket, dass die Benutzung des Textsatzsystems TeX mit Hilfe von Makros vereinfacht TeX wurde von Professor Donald E. Knuth (Stanford Universität) entwickelt. Anfang der 1980er Jahre entwickelte Leslie Lamport eine Sammlung von TeX-Makros Formatierung des Textes durch Auszeichnungsbefehle (logisches Markup) Formatierung und Inhalte sind getrennt Das LaTeX-System muss separat installiert werden und ist plattformunabhängig (OSX, Windows, Linux/UNIX, OS/2) Große Community entwickelt vielfältige LaTeX Makros/Pakete Moderne Abwandlungen XeLaTeX (Benutzung beliebiger Systemschriften) LuaTeX (pdftex mit integriertem Lua als Skriptsprache)
Was ist LaTeX nicht keine Textverarbeitung im engeren Sinne, d.h. es ist kein WYSIWYG System, aber ein WYSIWYM System (M=mean) kein mach mal schnell System Die Lernkurve ist anfangs relativ steil, kann aber auch sehr schnell sehr flach werden
Welche Herausforderungen gibt es? einige Möchte man den Datenbank-Benutzer nicht mit (zu viel) LaTeX konfrontieren, so muss man: viel skripten eventuell auch Eigene Funktionen (custom functions) entwickeln Es gibt sehr gute deutschsprachige Literatur zum Thema für einen leichten Einstieg Englisch ist von großem Vorteil, um von dem großen Fundus an Informationen und Erfahrungen aus dem Internet zu profitieren Durchhaltevermögen mitbringen
Oans, Zwoa, Passt! perfekt gesetzte PDF Dokumente unterschiedliche Datenquellen innerhalb eines Dokumentes sind problemlos kombinierbar flexibler Satzspiegel, Textumlauf, Bildelemente, Tabelle (Adobe InDesign und QuarkXPress ohne WYSIWYG) sehr gute Ausgabe für mathematische Texte große Dokumente können problemlos erzeugt werden systemunabhängig, da eigene Schriftengine METAFONT leere PDF-Seiten sind Geschichte Seite x von y, Inhalts-, Tabellen- und Bildverzeichnisse frei Haus
LaTeX - Verarbeitungsprozess xelatex alte Methode aktuelle Methode Bildquelle : http://fsim-ev.de/dokuwiki/gruppen:latex:start
Hallo Welt! % hello.tex % das erste LaTeX-Dokument \documentclass{article} % \begin{document} Hallo Welt! \end{document} <= Kommentar <= Kommentar <= Definition der Dokumentklasse <= Kommentar <= Beginn des Dokuments <= Inhalt/Nutztext <= Ende des Dokuments Konsolle: pdflatex hello.tex
Hallo Welt! Demo Konsolle: pdflatex hello.tex Hinweis: in der LaTeX Konsole wird der Verarbeitungsfortschritt gezeigt. Bei Fehlern kann man die Verarbeitung mit x anhalten
LaTeX - Dokumentdefinition Ein LaTeX Dokument beginnt immer mit der Definition der Dokumentklasse. \documentclass[optionen]{klassenname} article oder scrartcle - für einfache Texte report oder scrreprt - für längere Texte book oder scrbook - für Bücher Der Nutztext wird innerhalb der Umgebung document platziert. \begin{document} Der gesamte Inhalt des Dokumentes befindet sich hier. \end{document} Tipp: Mehr Infos zum KOMA-Script Projekt: http://www.komascript.de/komascriptbestandteile
LaTeX - Pakete Mit Hilfe von Paketen kann ein LaTeX Dokument um beliebige Funktionen erweitern werden. \usepackage[optionen]{paketname} fontspec - Benutzung beliebiger Schriften tabularx - Tabellenbreite wie das Schriftbild graphicx - flexibles Einfügen von Grafiken longtable - Tabellen über mehrere Seiten geometry - bequeme Definition des Seitenlayouts fontenc - erlaubt die Nutzung von Sonderzeichen inputenc - erlaubt das direkte Eingeben von Umlauten Tipp: Weitere interessanten und hilfreiche Pakete: calc, array, soul tocloft, fancyhdr, watermark, wallpaper, pagelts, setspace
Hallöchen Welt! % umlaute.tex % Um Umlaute direkt darstellen zu können werden Zusatzpakete gebraucht % Dateiformat auf UTF-8, für XeLaTeX \documentclass[12pt]{article} % \usepackage[german]{babel} % deutsche Silbentrennung, etc. \usepackage[t1]{fontenc} \usepackage[latin1]{inputenc} % \begin{document} Hallöchen Welt! \end{document} Konsolle: pdflatex umlaute.tex
Hallöchen Welt! Demo Konsolle: pdflatex umlaute.tex
LaTeX - Schriften \usepackage{fontspec} - Erlaubt die Nutzung beliebiger Schriften, die auf dem System installiert sind \setmainfont[scale=1]{schriftname} - Standardschrift \newfontface\eigenerbezeichner[scale=1]{schriftname} - Definition von eigenen Umgebungen mit beliebiger Schrift Die dokumentbezogene Standardschrift wird mit \setmainfont definiert. {\eigenerbezeichner Das ist der Text, der nur in dieser Stelle in der neuen Schrift dargestellt wird.} Info: fontspec ist eine Erweiterung von ursprünglich zu diesem Zweck entwickeltem Paket xltxtra (einsetzbar in XeTeX und LuaTex)
LaTeX - Schriften Demo Konsolle: xelatex schrifttyp.tex pdflatex - geht nicht (siehe Konsole/Terminal)
LaTeX - Textformatierung Formatanweisungen werden direkt im Text vorgenommen (keine Umgebungen) Es gibt einige Pakete, die sich verschiedenen Aspekten der Formatierung/Texthervorhebung widmen. {\bf Text}, {\bfseries Text} - Fettschrift {\it Text}, {\itshape Text} - kursiver Text {\bfseries\itshape Text} - kursive Fettschrift Einfache Texthervorhebung \colorbox{yellow}{text} - gelb hervorgehobener Text Tipp: Für komplexe Texthervorhebungen kann das Paket soul verwendet werden
LaTeX - Textformatierung Demo Konsolle: xelatex schriftformatierung.tex
LaTeX - Dokumentstruktur Dokumente können mit Hilfe von Anweisungen zur Erstellung von Kapiteln, Abschnitten und Unterabschnitten strukturiert werden. Die Strukturierung bringt eine automatische Nummerierung mit sich. \chapter{titel des Kapitels} \section{titel des Abschnittes} \subsection{titel des Unterabschnittes} Strukturdefinitionen werden auch zur Erzeugung von automatischen Inhaltsverzeichnissen sowie Tabellen- (Umgebung table) oder Bildverzeichnissen (Umgebung figure) verwendet. Tipp: \section*{titel des Abschnittes} erzeugt zwar einen Abschnitt aber ohne Nummerierung und wird somit nicht ins Inhaltsverzeichnis aufgenommen. Gilt für alle Anweisungen.
LaTeX - Dokumentstruktur Demo Konsolle: xelatex struktur.tex
LaTeX - Tabellen Tabellen werden mit mehreren, verschachtelten Anweisungen gesteuert.... \begin{table}[positionierung] \caption{titel der Tabelle}\label{Markierung}\centering \begin{tabular}{lr} Eins & Zwei \\ Drei & Vier \\ \end{tabular} \end{table}... Tipp: Tabellen können mit \ref{markierung} an jeder beliebigen Stelle im Dokument referenziert werden. Mit \pageref{markierung} kann auf die Seite mit dem entsprechenden Label referenziert werden. [Positionierung] kann h,t und oder b und mit oder ohne! sein. Es ist ein optionaler Parameter. Z.B: [h!], [htb], [hb!], usw.
LaTeX - Aufzählungen \begin{itemize} \item Erster Punkt \item Zweiter Punkt \end{itemize} Aufzählungspunkte mit Symbolen \begin{enumerate} \item Aufzählungsp. 1 \item Aufzählungsp. 2 \end{enumerate} Aufzählungspunkte mit Zahlen \begin{description} \item[a] erster Punkt \item[b] zweiter Punkt \end{description} Freidefinierbare Aufzählungspunkte Verschachtelte Aufzählungen sind ebenfalls möglich.
LaTeX - Tabellen & Aufzählungen Demo Konsolle: xelatex tabellen.tex
LaTeX - Grafiken Grafiken werden ähnlich den Tabellen als gleitende Umgebungen (floating) eingebunden.... \begin{figure}[positionierung] \caption{titel des Bildes}\label{Markierung}\centering \includegraphics[optionen]{dateiname.jpg} %png, eps, pdf \end{figure}... Tipp: Möchte man für Grafiken bzw. Tabellen ein automatisch erzeugtes Verzeichnis anlegen (\listoffigures bzw. \listoftables), muss man die Umgebungen table und figure) verwenden.
LaTeX - Grafiken Demo Konsolle: xelatex grafiken.tex
LaTeX-Dateien mit FileMaker erzeugen Text/Feldinhalt mit der Textfunktion LiesAlsCSS übersetzen Mit Hilfe von eigenen Funktionen die Textformatierung analysieren, um die Textstruktur und Formatierung ins LaTeX zu übersetzen Ausschnitte/Portale mit Portal-Skripten Datensatz für Datensatz (Zeile für Zeile) in LaTeX-Tabellen aufbereiten Den aufbereiteten Text in ein Feld schreiben und...... eine *.tex-datei mit dem Skriptschritt Exportiere alle Feldwerte speichern Tipp: Mit \include{dateiname} kann eine beliebige Datei (dateiname.tex) in eine vordefinierte Haupt-TeX-Datei eingebunden werden.
Kommunikation FileMaker <-> LaTeX Starten der Verarbeitung der TeX-Datei aus FileMaker heraus: Event senden - Windows AppleScript ausführen - Mac Während der Verarbeitung - Überwachung der Ausgabe Da LaTeX keine Rückmeldung an FileMaker gibt, kann die Logdatei zur Laufzeit untersucht werden. Wenn ein PDF-Dokument erfolgreich erzeugt wurde, finden man am Ende der Logdatei den Hinweis Output written on. Wenn kein PDF erzeugt wurde, findet man No pages of output Mit dem Skriptschritt Datensätze importieren wird aus jeder Zeile der Logdatei ein Datensatz erzeugt Mit der Textfunktion MusterAnzahl ( Text ; Suchtext ) kann man die Datensätze analysieren Nach erfolgreicher Verarbeitung kann die PDF-Datei mit Hilfe von Event senden oder AppleScript ausführen geöffnet werden
FileMaker und LaTeX - Wann sinnvoll? wenn top gesetzte PDF-Dokumente ein Muss sind wenn große PDF-Dokumente erzeugt werden sollen wenn einheitliche Anforderungen an die Formatierung definiert werden können wenn keine PDFs von unterwegs erzeugt werden müssen (aktuell nicht ios kompatibel) wenn der Zeitrahmen für die Entwicklung nicht zu eng gefasst ist wenn der Geduldsfaden bei einem selber (oder beim Chef) nicht zu schnell reißt
LaTeX Informationsquellen Allgemeine Infos und Tutorials http://www.dante.de/ http://de.wikipedia.org/wiki/latex http://homepage.ruhr-uni-bochum.de/georg.verweyen/latexfuerword.html http://fsim-ev.de/dokuwiki/gruppen:latex:start (sehr gute Quellenübersicht) http://www.komascript.de/komascriptbestandteile (Dokumentklassen) http://www.weinelt.de/latex/index.html (Befehlsreferenz) LaTeX-Systeme MiKTeX (sehr komfortabel, Windows): http://miktex.org/ TeXLive (Windows): http://www.tug.org/texlive/ MacTeX (Mac): http://www.tug.org/mactex/ Editoren ConTeXt (Freeware, Windows, Mac): http://www.contexteditor.org/de/ WinEdt (sehr mächtig aber kommerziell, Windows): http://www.winedt.com/ TeXShop (OpenSource, Mac): http://pages.uoregon.edu/koch/texshop/
Vielen Dank unseren Sponsoren Danke für das Bewerten dieses Vortrages
FileMaker & LaTeX Vielen Dank Fragen & Antworten
Perfekte Druckausgabe mit LaTeX und FileMaker Einführung in LaTeX und Herausforderungen Dr. Adam G. Augustin www.agametis.de