FMK2012: Perfekte Druckausgabe mit LaTeX und FileMaker von Adam Augustin
FileMaker Konferenz2010
Perfekte Druckausgabe mit LaTeX
und FileMaker
Einführung in LaTeX und Herausforderungen
Dr. Adam G. Augustin
www.agametis.de
Dr. Adam G. Augustin - agametis FileMaker Konferenz 2012 Salzburg
Perfekte Druckausgabe mit LaTeX und FileMaker www.filemaker-konferenz.com
FileMaker Konferenz2010
Ü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
Dr. Adam G. Augustin - agametis FileMaker Konferenz 2012 Salzburg
Perfekte Druckausgabe mit LaTeX und FileMaker www.filemaker-konferenz.com
FileMaker Konferenz2010
Wunsch und Wirklichkeit
FileMaker bietet jetzt endlich
eine lesbare Ausgabe...
...mit LaTeX
Dr. Adam G. Augustin - agametis FileMaker Konferenz 2012 Salzburg
Perfekte Druckausgabe mit LaTeX und FileMaker www.filemaker-konferenz.com
FileMaker Konferenz2010
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
Dr. Adam G. Augustin - agametis FileMaker Konferenz 2012 Salzburg
Perfekte Druckausgabe mit LaTeX und FileMaker www.filemaker-konferenz.com
FileMaker Konferenz2010
Was ist LaTeX
• “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)
Quelle: Wikipedia
Dr. Adam G. Augustin - agametis FileMaker Konferenz 2012 Salzburg
Perfekte Druckausgabe mit LaTeX und FileMaker www.filemaker-konferenz.com
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
Dr. Adam G. Augustin - agametis FileMaker Konferenz 2012 Salzburg
Perfekte Druckausgabe mit LaTeX und FileMaker www.filemaker-konferenz.com
FileMaker Konferenz2010
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 ☺
Dr. Adam G. Augustin - agametis FileMaker Konferenz 2012 Salzburg
Perfekte Druckausgabe mit LaTeX und FileMaker www.filemaker-konferenz.com
FileMaker Konferenz2010
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
Dr. Adam G. Augustin - agametis FileMaker Konferenz 2012 Salzburg
Perfekte Druckausgabe mit LaTeX und FileMaker www.filemaker-konferenz.com
FileMaker Konferenz2010
LaTeX - Verarbeitungsprozess
xelatex
alte Methode
aktuelle Methode
Bildquelle : http://fsim-ev.de/dokuwiki/gruppen:latex:start
Dr. Adam G. Augustin - agametis FileMaker Konferenz 2012 Salzburg
Perfekte Druckausgabe mit LaTeX und FileMaker www.filemaker-konferenz.com
FileMaker Konferenz2010
Hallo Welt!
% hello.tex <= Kommentar
% das erste LaTeX-Dokument <= Kommentar
documentclass{article} <= Definition der Dokumentklasse
% <= Kommentar
begin{document} <= Beginn des Dokuments
Hallo Welt! <= Inhalt/Nutztext
end{document} <= Ende des Dokuments
Konsolle:
pdflatex hello.tex
Dr. Adam G. Augustin - agametis FileMaker Konferenz 2012 Salzburg
Perfekte Druckausgabe mit LaTeX und FileMaker www.filemaker-konferenz.com
FileMaker Konferenz2010
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
Dr. Adam G. Augustin - agametis FileMaker Konferenz 2012 Salzburg
Perfekte Druckausgabe mit LaTeX und FileMaker www.filemaker-konferenz.com
FileMaker Konferenz2010
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
Dr. Adam G. Augustin - agametis FileMaker Konferenz 2012 Salzburg
Perfekte Druckausgabe mit LaTeX und FileMaker www.filemaker-konferenz.com
FileMaker Konferenz2010
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
Dr. Adam G. Augustin - agametis FileMaker Konferenz 2012 Salzburg
Perfekte Druckausgabe mit LaTeX und FileMaker www.filemaker-konferenz.com
FileMaker Konferenz2010
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
Dr. Adam G. Augustin - agametis FileMaker Konferenz 2012 Salzburg
Perfekte Druckausgabe mit LaTeX und FileMaker www.filemaker-konferenz.com
FileMaker Konferenz2010
Hallöchen Welt!
Demo
Konsolle:
pdflatex umlaute.tex
Dr. Adam G. Augustin - agametis FileMaker Konferenz 2012 Salzburg
Perfekte Druckausgabe mit LaTeX und FileMaker www.filemaker-konferenz.com
FileMaker Konferenz2010
LaTeX - Schriften
• usepackage{fontspec} - Erlaubt die Nutzung beliebiger Schriften,
die auf dem System installiert sind
• setmainfont[Scale=1]{Schriftname} - Standardschrift
• newfontfaceeigenerBezeichner[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)
Dr. Adam G. Augustin - agametis FileMaker Konferenz 2012 Salzburg
Perfekte Druckausgabe mit LaTeX und FileMaker www.filemaker-konferenz.com
FileMaker Konferenz2010
LaTeX - Schriften
Demo
Konsolle:
xelatex schrifttyp.tex
pdflatex - geht nicht (siehe Konsole/Terminal)
Dr. Adam G. Augustin - agametis FileMaker Konferenz 2012 Salzburg
Perfekte Druckausgabe mit LaTeX und FileMaker www.filemaker-konferenz.com
FileMaker Konferenz2010
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
• {bfseriesitshape Text} - kursive Fettschrift
Einfache Texthervorhebung
• colorbox{yellow}{Text} - gelb hervorgehobener Text
Tipp: Für komplexe Texthervorhebungen kann das Paket “soul”
verwendet werden
Dr. Adam G. Augustin - agametis FileMaker Konferenz 2012 Salzburg
Perfekte Druckausgabe mit LaTeX und FileMaker www.filemaker-konferenz.com
FileMaker Konferenz2010
LaTeX - Textformatierung
Demo
Konsolle:
xelatex schriftformatierung.tex
Dr. Adam G. Augustin - agametis FileMaker Konferenz 2012 Salzburg
Perfekte Druckausgabe mit LaTeX und FileMaker www.filemaker-konferenz.com
FileMaker Konferenz2010
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.
Dr. Adam G. Augustin - agametis FileMaker Konferenz 2012 Salzburg
Perfekte Druckausgabe mit LaTeX und FileMaker www.filemaker-konferenz.com
FileMaker Konferenz2010
LaTeX - Dokumentstruktur
Demo
Konsolle:
xelatex struktur.tex
Dr. Adam G. Augustin - agametis FileMaker Konferenz 2012 Salzburg
Perfekte Druckausgabe mit LaTeX und FileMaker www.filemaker-konferenz.com
FileMaker Konferenz2010
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.
Dr. Adam G. Augustin - agametis FileMaker Konferenz 2012 Salzburg
Perfekte Druckausgabe mit LaTeX und FileMaker www.filemaker-konferenz.com
FileMaker Konferenz2010
LaTeX - Aufzählungen
begin{itemize}
item Erster Punkt Aufzählungspunkte mit
item Zweiter Punkt Symbolen
end{itemize}
begin{enumerate}
item Aufzählungsp. 1 Aufzählungspunkte mit
item Aufzählungsp. 2 Zahlen
end{enumerate}
begin{description}
item[A] erster Punkt Freidefinierbare
item[B] zweiter Punkt Aufzählungspunkte
end{description}
Verschachtelte Aufzählungen sind ebenfalls möglich.
Dr. Adam G. Augustin - agametis FileMaker Konferenz 2012 Salzburg
Perfekte Druckausgabe mit LaTeX und FileMaker www.filemaker-konferenz.com
FileMaker Konferenz2010
LaTeX - Tabellen & Aufzählungen
Demo
Konsolle:
xelatex tabellen.tex
Dr. Adam G. Augustin - agametis FileMaker Konferenz 2012 Salzburg
Perfekte Druckausgabe mit LaTeX und FileMaker www.filemaker-konferenz.com
FileMaker Konferenz2010
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.
Dr. Adam G. Augustin - agametis FileMaker Konferenz 2012 Salzburg
Perfekte Druckausgabe mit LaTeX und FileMaker www.filemaker-konferenz.com
FileMaker Konferenz2010
LaTeX - Grafiken
Demo
Konsolle:
xelatex grafiken.tex
Dr. Adam G. Augustin - agametis FileMaker Konferenz 2012 Salzburg
Perfekte Druckausgabe mit LaTeX und FileMaker www.filemaker-konferenz.com
FileMaker Konferenz2010
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.
Dr. Adam G. Augustin - agametis FileMaker Konferenz 2012 Salzburg
Perfekte Druckausgabe mit LaTeX und FileMaker www.filemaker-konferenz.com
FileMaker Konferenz2010
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
Dr. Adam G. Augustin - agametis FileMaker Konferenz 2012 Salzburg
Perfekte Druckausgabe mit LaTeX und FileMaker www.filemaker-konferenz.com
FileMaker Konferenz2010
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 ☺
Dr. Adam G. Augustin - agametis FileMaker Konferenz 2012 Salzburg
Perfekte Druckausgabe mit LaTeX und FileMaker www.filemaker-konferenz.com
FileMaker Konferenz2010
Vielen Dank unseren Sponsoren
Danke für das Bewerten dieses Vortrages
Dr. Adam G. Augustin - agametis FileMaker Konferenz 2012 Salzburg
Perfekte Druckausgabe mit LaTeX und FileMaker www.filemaker-konferenz.com
FileMaker Konferenz2010
FileMaker & LaTeX
Vielen Dank
Fragen & Antworten
Dr. Adam G. Augustin - agametis FileMaker Konferenz 2012 Salzburg
Perfekte Druckausgabe mit LaTeX und FileMaker www.filemaker-konferenz.com
FileMaker Konferenz2010
Perfekte Druckausgabe mit LaTeX
und FileMaker
Einführung in LaTeX und Herausforderungen
Dr. Adam G. Augustin
www.agametis.de
Dr. Adam G. Augustin - agametis FileMaker Konferenz 2012 Salzburg
Perfekte Druckausgabe mit LaTeX und FileMaker www.filemaker-konferenz.com