PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Dateiname abhängig von einer Variable ändern



marion55
12-06-2008, 10:15
Hallo!

Ich möchte aus einer tex-Datei ein pdf erzeugen, aber den Titel des erzeugten pdfs abhängig von einer Variable verändern.

zB: Datei Heißt "test.tex"
wenn boolean x = true --> Ausgadatei: test_ja.pdf
wenn boolean x = false --> Ausgabedatei: test_nein.pdf

Gibts da irgendeine Möglichkeit, das zu relaisieren?

Vielen Dank!

lg, Marion

edico
12-06-2008, 12:06
Es ist schwer nachzuvollziehen, welche Intentionen hinter Deinem Wunsch steht und was tatsächlich Du erreichen willst.
Es gibt zweifelsohne wie immer verschiedene Wege, zum Ziel zu gelangen: Schlagworte könnten sein: ifthenelse - ifcase - \def\modus{0} - \setboolean ...

Eine recht schlichte Lösung kann IMO so aussehen.

%%% file demo.tex [Version1.0-haendisch]
%%% generiert Dozenten- und Teilnehmerskript aus einem LaTeX Dokument
%%%
%%% compile:
%%% pdflatex -jobname=dozent[teilnehmer] demo
%%% [Schalter für die Version händisch switschen]
%
\documentclass{scrreprt}
\usepackage[latin1]{inputenc}
\usepackage{ifthen}
\newboolean{doz}
% ------------------------------------------------------
% Schalter - händisch switschen
% ------------------------------------------------------
%\setboolean{doz}{true} %Schalter für Dozentenversion
\setboolean{doz}{false} %Schalter für Teilnehmerversion

\begin{document}
\chapter{Kapitel}
\ifthenelse{\boolean{doz}}
%dann Klausel
{Dozententext}
%else-Klausel
{Teilnehmertext}

\section{Abschnitt}
Text für alle
\end{document}

edico

marion55
12-06-2008, 12:46
Danke für die rasche Antwort!
So weit bin ich leider schon, mein Problem ist folgendes...

\ifthenelse{\boolean{doz}}
%dann Klausel
{Dozententext
*
}

%else-Klausel
{Teilnehmertext
**
}

Ich möchte gerne formulieren:
* "Bennene mir das outputfile Dozententext.pdf"
bzw
** "Benenne mir das outputfile Teilnehmertext.pdf"

..so dass das outputfile dann Dozententext.pdf oder Teilnehmertext.pdf heißt, je nachem ob doz true oder false ist.
(konnte leider nirgends finden, wie/ob ich ich latex sagen kann, wie das produzierte outputfile heißen soll..default nimmt latex ja den Namen vom Haupt-tex-file)

lg, Marion

edico
12-06-2008, 13:54
..so dass das outputfile dann Dozententext.pdf oder Teilnehmertext.pdf heißt

... wie denn? Hast Du mein Posting nicht gelesen?

Dort steht doch:



%%% compile:
%%% pdflatex -jobname=dozent[teilnehmer] demo
%%% [Schalter für die Version händisch switschen]


Also nochmal langsam:
1.Fall:
DozentenVersion: Schalter=true, Compile: pdflatex -jobname=dozent demo
2.Fall:
TeilenehmerVersion: Schalter=false, Compile: pdflatex -jobname=teilnehmer demo

Sollte so auch bei Dir laufen ;-)

edico

marion55
12-06-2008, 14:22
Hi!

Sorry, hatte dich falsch verstanden.

Das Problem ist, dass ich nicht händisch compiliere sondern mit TeXnicCenter; ich möchte gerne den Namen da nicht direkt beim compilieren eingeben/übergeben, sondern in mehreren ifthenelse einbauen, wie die Datei heißen soll (je nachdem welches if true ist..)

oder bin ich komplett falsch? :(

lg, Marion

edico
12-06-2008, 16:40
...dass ich nicht händisch compiliere sondern mit TeXnicCenter

Wenn Du das nicht willst, dann musst die Kompilierbefehle in eine Batch schreiben, die Du dann mit dem Editor aufrufen können solltest. Damit kenn' ich mich nicht aus, und Win ist viel zu lange zurück ...

edico