physics in a nutshell logo

Neue Webseite zum Physikstudium!

Header-Logo: genug-davon

Inkscape Grafiken in Latex Dokumente einbinden

Motivation

Wenn man für das Protokoll beschriftete Skizzen und Grafiken mit Inkscape erstellt und diese in ein Latex Dokument einbinden möchte, so gibt es eine besonders schöne Möglichkeit, dies zu tun. Dabei werden die Bild- und Textelemente der Grafik separat abgespeichert. Der Text wird dann als normaler Latex-Text an den ursprünglichen Positionen über den Bildelementen eingefügt. Das hat den großen Vorteil, dass alle Symbole der Latex-Matheumgebung verwendet werden können. Ein weiterer Vorteil ist, dass der Schriftstil an den Rest des Dokumentes angepasst ist.

Umsetzung

  1. Grafik mit Inkscape erstellen. Den Text so schreiben, wie man es bei Latex tun würde. Insbesondere wird die Matheumgebung durch $\$ \dots \$$ gekennzeichnet (sofern man diese verwenden möchte). Datei wie gewohnt als .svg abspeichern (damit sie später evtl. nochmal modifiziert werden kann).
  2. Nun wird die Datei zusätzlich noch als .pdf abgespeichert: Speichern als .pdf
  3. Dabei sollte sich folgendes Fenster öffnen: Speichern als .pdf
    Hier ist darauf zu achten, dass die Häkchen so gesetzt sind, wie im Bild dargestellt. Durch Klick auf OK werden nun zwei zusätzliche Dateien erstellt, eine mit der Endung .pdf und eine mit der Endung .pdf_tex
  4. Nun kann das Bild in die Latex Datei eingebunden werden. Dazu verwendet man z.B. folgenden Code:
    \begin{figure}[!ht]             % Einbetten in figure wie gehabt
        \centering                  % zentrierte Ausrichtung, optional
        \def\svgwidth{200pt}    
            % die Bildbreite muss auf diese Weise festgelegt werden!
        \input{versuchsaufbau.pdf_tex}  
            % 'versuchsaufbau' durch Dateinamen ersetzen.
        \caption{Versuchsaufbau}    % Bildunterschrift, optional
        \label{fig:aufbau}          % Label für Verweise, optional
    \end{figure}
                                
    Falls man diese Befehle wieder vergessen hat, kann man auch in der .pdf_tex-Datei nachschauen, dort werden sie nochmal in einem Kommentar genannt. Wird die Datei aus einem anderen als dem aktuellen Verzeichnis eingebunden, so muss das import-Paket verwendet werden.

Anmerkungen

Wenn Inkscape die relativen Positionen der Textelemente berechnet, verwendet es die Gesamt-Zeichenzahl als Grundlage. Hat man nun viele escape-Zeichen verwendet (z.B. in der Matheumgebung -> effektive Ausgabe ist deutlich kürzer als die Anzahl Zeichen in Inkscape), so können manche Texte etwas verschoben sein. Dies kann man korrigieren, in dem man entweder die Position des Textes in der Originaldatei oder direkt in der .pdf_tex-Datei ändert.