goLaTeX - Mein LaTeX-Forum

Mein LaTeX-Forum


Login  | Registrieren
Direktlinks:
Zuletzt aktive Beiträge
Unbeantwortete Beiträge
[Erweitert]

Forenstatistik:
Beiträge: 101745
Top-Poster: Johannes_B (5072)

Wir begrüßen unseren neuesten Benutzer localhorst.

Links:


Mit Unterstützung von DANTE e.V.: Deutschsprachige Anwendervereinigung TeX. Danke den Mitgliedern!





Forum
      Option
[Erweitert]
  • Diese Seite weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Erstellen verschiedener Pdf-Versionen

 

Raldemar
Forum-Newbie
Forum-Newbie

Beiträge: 2
Anmeldedatum: 27.09.10
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 28.09.2010, 09:02     Titel: Erstellen verschiedener Pdf-Versionen
  Antworten mit Zitat      
Hallo zusammen,

ich beschäftige mich erst seit kurzem mit Latex und hab natürlich gleich mal eine Frage:

Ich benötige 2 verschiedene Versionen eines Dokuments folgender Struktur:

Kap.1
Kap.2
Kap.3-Version1
Kap.4
usw.

und...

Kap.1
Kap.2
Kap.3-Version2
Kap.4
usw.

gibt es eine Möglichkeit dies Mithilfe Latex umzusetzen?

thx u lg aus Graz

Raldemar
Private Nachricht senden Benutzer-Profile anzeigen

Xenara
Forum-Meister
Forum-Meister

Beiträge: 682
Anmeldedatum: 25.11.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 28.09.2010, 09:10     Titel:
  Antworten mit Zitat      
Ein Main-Dokument erstellen und mittels \input (oder \include) das auszutauschende Dokument einbinden.
Der Übersichtlichkeit halber mache ich es eigentlich immer so, dass ich sämtliche Kapitel sowieso auslagere.

Bei dir würde das dann etwa so aussehen:
Code

\documentclass{...}
...

\begin{document}
...
\input{Kap1}
\input{Kap2}
\input{Kap3-Version1}
%\input{Kap3-Version2}
\input{Kap4}
...
\end{document}
 


Dann mal mit der einen Version, mal mit der anderen kompilieren und das entstehende PDF jeweils unter anderem Namen speichern.
Private Nachricht senden Benutzer-Profile anzeigen

Raldemar
Forum-Newbie
Forum-Newbie

Beiträge: 2
Anmeldedatum: 27.09.10
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 28.09.2010, 09:13     Titel:
  Antworten mit Zitat      
Danke für die schnelle Antwort,

ja diese Möglichkeit hab ich jetzt als quasi Notlösung, ich suche aber nach einer automatisierten Variante, da ich das bei mehreren files umsetzen möchte ohne jedesmal im code rumzuwurschteln.
Private Nachricht senden Benutzer-Profile anzeigen

Xenara
Forum-Meister
Forum-Meister

Beiträge: 682
Anmeldedatum: 25.11.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 28.09.2010, 09:41     Titel:
  Antworten mit Zitat      
Ok, da wäre \input natürlich etwas aufwändig. Um solche Missverständnisse zu vermeiden, wäre es gut, wenn du bereits bei der Fragestellung alle nötigen Infos mitliefern würdest.
Dazu gehört auch ein Minimalbeispiel, denn momentan habe ich noch keine Ahnung, wie dein Dokument wirklich aussieht.

Daher weiss ich nicht, ob sich mein Vorschlag auf dein Problem wirklich anwenden lässt:
Code

\documentclass{scrreprt}
\usepackage[ngerman]{babel}
\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}  

\usepackage{ifthen}% Für Befehl \ifthenelse

\begin{document}

% Neuer Befehl \version{x}, wobei X entweder 1 oder beliebig sein kann
\newcommand{\version}[1]{%
% Wenn-Dann-Sonst-Befehl: Wenn in Befehl \version{x} x=1, dann ist die Abfrage Wahr -> erste Klammer. Sonst: zweite Klammer
\ifthenelse{\equal{#1}{1}}%
% Alle Dateien für Version 1
{% Beginn Then
\input{Deine-Datei-Version-1}%
\input{Deine-Datei-Version-1}%
\input{Deine-Datei-Version-1}%
\input{Deine-Datei-Version-1}%
\input{Deine-Datei-Version-1}%
}% Ende Then
% Alle Dateien für Version 2
{% Beginn Else
\input{Deine-Datei-Version-2}%
\input{Deine-Datei-Version-2}%
\input{Deine-Datei-Version-2}%
\input{Deine-Datei-Version-2}%
\input{Deine-Datei-Version-2}%
}% Ende Else
}

% Befehl kann erst verwendet werden, wenn er im \newcommand auch definiert wurde, also am Ende des Dokuments
\version{1}

\end{document}
 
Private Nachricht senden Benutzer-Profile anzeigen

Xenara
Forum-Meister
Forum-Meister

Beiträge: 682
Anmeldedatum: 25.11.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 28.09.2010, 09:56     Titel:
  Antworten mit Zitat      
Folgende Variante wäre noch einfacher, setzt aber voraus, dass sich die Dateinamen von Version 1 und 2 wirklich nur um die Zahl unterscheiden bzw. dass alle Dateien einer Version gleich aufgebaut sind.
Also z.B. foo-1, file-1, datei-1, aber nicht 1-foo, file-1-version, datei-1.

Im Beispiel funktionieren Dateien der Struktur foo-x, wobei foo der Hauptname ist, der Bindestrich wird automatisch eingefügt, und x die Versionsnummer.

Code
\documentclass{scrreprt}
\usepackage[ngerman]{babel}
\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}  


% Neuer input-Befehl \myinput: \myinput{Dateiname}{Versionsnummer} -> z.B. "Dateiname-1"
\newcommand{\myinput}[2]{%
\input{#1-#2}
}

% Neuer Befehl \myversion. Dient nur dazu, die Versionsnummer für alle \myinput-Befehle gleichzeitig zu definieren.
% Muss für die jeweils gewünschte Version geändert werden.
\newcommand{\myversion}{2}

\begin{document}

\input{Normal}

\myinput{foo}{\myversion}

\end{document}
 
Private Nachricht senden Benutzer-Profile anzeigen

KOMA
TeX-Entwickler
TeX-Entwickler


Beiträge: 2637
Anmeldedatum: 04.07.08
Wohnort: ---
Version: Ich bin hier nicht mehr zu erreichen!
     Beitrag Verfasst am: 28.09.2010, 10:56     Titel:
  Antworten mit Zitat      
Xenara hat Folgendes geschrieben:
Folgende Variante wäre noch einfacher, setzt aber voraus, dass sich die Dateinamen von Version 1 und 2 wirklich nur um die Zahl unterscheiden bzw. dass alle Dateien einer Version gleich aufgebaut sind.
Also z.B. foo-1, file-1, datei-1, aber nicht 1-foo, file-1-version, datei-1.


Code
% Nehmen wir an diese Datei heißt foo.tex
\documentclass{scrreprt}
\usepackage[ngerman]{babel}
\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}  


% Neuer input-Befehl \versioninput{Dateiname} -> z. B. "Dateiname-1" etc.
\newcommand{\versioninput}[2]{%
  \input{#1-\versionpostfix.tex}
}
\providecommand*{\versionpostfix}{1}% Nur definieren, wenn noch nicht definiert.

\input{Normal}

\versioninput{footext}

\end{document}
 

Statt \versionpostfix in der Datei zu ändern, kann man jetzt übrigens auch den Aufruf anpassen:
Code
latex '\def\versionpostfix{2}\input' foo
würde dafür sorgen, dass die Dateien mit Endung "-2.tex" geladen werden.

Man kann aber auch einfach eine Hilfedatei erstellen:
Code
% Compiliere Version 5:
\def\versionpostfix{5}
\input foo.tex
und diese dann durch LaTeX jagen, um Version 5 zu erhalten. Das Ergebnis trägt dann natürlich den Namen den Hilfsdatei (was man per Aufrufoption ggf. ändern kann, mehr dazu in der Manpage zu pdftex bzw. tex).
_________________

goLaTeX-Knigge (mit Themen Minimalbeispiel und So stellst Du Deine Frage richtig)
DE-TeX-FAQ, UK-FAQ, l2kurz, l2tabu, CTAN, The TeX Catalogue
KOMA-Script
Ich bin hier nicht mehr zu erreichen!
Private Nachricht senden Benutzer-Profile anzeigen

Neues Thema eröffnen Neue Antwort erstellen



Options and Permissions
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum herunterladen
.

goLaTeX ist Teil der goForen
goForen.de goMATLAB.de goLaTeX.de


  Datenschutzerklärung | Impressum | FAQ | goLaTeX RSS Button RSS-Feed

Copyright © 2008 - 2020 goLaTeX.de