matheraum.de
Raum für Mathematik
Offene Informations- und Nachhilfegemeinschaft

Für Schüler, Studenten, Lehrer, Mathematik-Interessierte.
Hallo Gast!einloggen | registrieren ]
Startseite · Forum · Wissen · Kurse · Mitglieder · Team · Impressum
Forenbaum
^ Forenbaum
Status Mathe
  Status Schulmathe
    Status Primarstufe
    Status Mathe Klassen 5-7
    Status Mathe Klassen 8-10
    Status Oberstufenmathe
    Status Mathe-Wettbewerbe
    Status Sonstiges
  Status Hochschulmathe
    Status Uni-Analysis
    Status Uni-Lin. Algebra
    Status Algebra+Zahlentheo.
    Status Diskrete Mathematik
    Status Fachdidaktik
    Status Finanz+Versicherung
    Status Logik+Mengenlehre
    Status Numerik
    Status Uni-Stochastik
    Status Topologie+Geometrie
    Status Uni-Sonstiges
  Status Mathe-Vorkurse
    Status Organisatorisches
    Status Schule
    Status Universität
  Status Mathe-Software
    Status Derive
    Status DynaGeo
    Status FunkyPlot
    Status GeoGebra
    Status LaTeX
    Status Maple
    Status MathCad
    Status Mathematica
    Status Matlab
    Status Maxima
    Status MuPad
    Status Taschenrechner

Gezeigt werden alle Foren bis zur Tiefe 2

Navigation
 Startseite...
 Neuerdings beta neu
 Forum...
 vorwissen...
 vorkurse...
 Werkzeuge...
 Nachhilfevermittlung beta...
 Online-Spiele beta
 Suchen
 Verein...
 Impressum
Das Projekt
Server und Internetanbindung werden durch Spenden finanziert.
Organisiert wird das Projekt von unserem Koordinatorenteam.
Hunderte Mitglieder helfen ehrenamtlich in unseren moderierten Foren.
Anbieter der Seite ist der gemeinnützige Verein "Vorhilfe.de e.V.".
Partnerseiten
Dt. Schulen im Ausland: Mathe-Seiten:Weitere Fächer:

Open Source FunktionenplotterFunkyPlot: Kostenloser und quelloffener Funktionenplotter für Linux und andere Betriebssysteme
StartseiteMatheForenLaTeXschleife in latex
Foren für weitere Studienfächer findest Du auf www.vorhilfe.de z.B. Astronomie • Medizin • Elektrotechnik • Maschinenbau • Bauingenieurwesen • Jura • Psychologie • Geowissenschaften
Forum "LaTeX" - schleife in latex
schleife in latex < LaTeX < Mathe-Software < Mathe < Vorhilfe
Ansicht: [ geschachtelt ] | ^ Forum "LaTeX"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien

schleife in latex: massenerstellung von pdfs
Status: (Frage) beantwortet Status 
Datum: 14:49 Mi 22.07.2009
Autor: ps_tricks

Aufgabe
Ich schreibe momentan ein paar serienbriefe. Um die Anhänge und das Anschreiben zusammenzufügen, habe ich eine externe Datei angelegt. Die sieht so aus:
documentclass[pdflatex,a4paper]{article}
usepackage{pdfpages}
begin{document}
includepdf[pages=1, frame=false]{Zugriff/Vorlage}
includepdf[pages=-, frame=false]{Zugriff/cvee}
includepdf[pages=-, frame=false]{Zugriff/info}
includepdf[pages=-, frame=false, landscape]{Zugriff/Versicherung}
includepdf[pages=-, frame=false]{Zugriff/nachweis}
end{document}
(ich hab die \ weggelassen, sonst wird das so komisch angezeigt)

Die Datei Vorlage enthält dabei ca. 26 Anschreiben an unterschiedliche Empfänger, die aber alle die gleichen Anhänge bekommen sollen.

Meine Frage:
Gibt es eine Möglichkeit in Latex eine Schleife zu programmieren für die Seitenzahl, so dass Latex sich immer eine Seite der Datei Vorlage nimmt, und diese dann mit den anderen Anhängen zu einer pdf-Datei vereint, ohne dass ich 26 Durchläufe machen muss?

Ich habe diese Frage in keinem Forum auf anderen Internetseiten gestellt.

        
Bezug
schleife in latex: Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 15:36 Mi 22.07.2009
Autor: Sigma

Hallo,

[]hier wird dir geholfen.

Gruß Sigma

Bezug
                
Bezug
schleife in latex: Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 16:53 Mi 22.07.2009
Autor: ps_tricks

Das trifft irgendwie nicht ganz das, was ich gerne hätte.
Ich hätte sozusagen gerne dass ich folgendes habe:
documentclass[pdflatex,a4paper]{article}
usepackage{pdfpages}
begin{document}
includepdf[pages=i, frame=false]{Zugriff/Vorlage}
includepdf[pages=-, frame=false]{Zugriff/cvee}
includepdf[pages=-, frame=false]{Zugriff/info}
includepdf[pages=-, frame=false, landscape]{Zugriff/Versicherung}
end{document}

wobei i=1...26 läuft und dass dann automatisch (wenn möglich) auch 26 (unabhängig voneinander) pdfs von Latex erzeugt werden. Kann mir da jemand helfen?

Bezug
        
Bezug
schleife in latex: Antwort
Status: (Antwort) fertig Status 
Datum: 21:42 Mi 22.07.2009
Autor: rainerS

Hallo!

> Ich schreibe momentan ein paar serienbriefe. Um die
> Anhänge und das Anschreiben zusammenzufügen, habe ich
> eine externe Datei angelegt. Die sieht so aus:
>  documentclass[pdflatex,a4paper]{article}
>  usepackage{pdfpages}
>  begin{document}
>  includepdf[pages=1, frame=false]{Zugriff/Vorlage}
>  includepdf[pages=-, frame=false]{Zugriff/cvee}
>  includepdf[pages=-, frame=false]{Zugriff/info}
>  includepdf[pages=-, frame=false,
> landscape]{Zugriff/Versicherung}
>  includepdf[pages=-, frame=false]{Zugriff/nachweis}
>  end{document}
>  (ich hab die \ weggelassen, sonst wird das so komisch
> angezeigt)

Dafür gibt es [code]...[/code]

>  
> Die Datei Vorlage enthält dabei ca. 26 Anschreiben an
> unterschiedliche Empfänger, die aber alle die gleichen
> Anhänge bekommen sollen.
>  Meine Frage:
> Gibt es eine Möglichkeit in Latex eine Schleife zu
> programmieren für die Seitenzahl, so dass Latex sich immer
> eine Seite der Datei Vorlage nimmt, und diese dann mit den
> anderen Anhängen zu einer pdf-Datei vereint, ohne dass ich
> 26 Durchläufe machen muss?

Schau mal []hier! LaTeX kann nur ein PDF schreiben.

Wenn du mehrere PDFs erzeugen willst, geht das nur mit externen Werkzeugen. Entweder du nimmst hinterher das PDF auseinander, oder du lässt LaTeX mehrmals laufen; am Ende der oben verlinkten Seite gibt's dazu ein Weblink.

Eine einfache Methode ist auch diese: du ersetzt die Seitenzahl i in deiner Datei durch ein Kommando, zum Beispiel \MeineNummer und setzt das beim Aufruf, etwa so:

 latex "\newcommand\MeineNummer{1} \input{start.tex}" 

Viele Grüße
   Rainer


Bezug
                
Bezug
schleife in latex: Andere Alternative
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 23:30 Mi 22.07.2009
Autor: Sigma

Ich bins nochmal,

versuch es doch mal so.

Beispieldokument: test.tex

1: \documentclass[12pt,twoside,a4paper]{article}
2: \begin{document}
3: Dies ist die \Para. Seite.
4: \end{document}


Und nun eine Batchdatei welche 5 PDF's erstellt
for /L %%N IN (1, 1, 5) DO pdflatex -jobname test%%N "\def\Para{%%N}\input test"

gruß Sigma

PS Klappt bei mir prima.Erzeugt 5 PDF Dokumente nacheinander. Würde mich über Rückmeldung von dir freuen.


Bezug
                        
Bezug
schleife in latex: Frage (reagiert)
Status: (Frage) reagiert/warte auf Reaktion Status 
Datum: 10:09 Do 23.07.2009
Autor: ps_tricks

Aufgabe
Super. Danke. Es klappt!

Aber jetzt um das ganze noch zu perfiktionieren, noch eine klitzekleine Frage: Ich habs leider mit programmieren nicht so ganz. Ich hätte jetzt gerne, dass die Dateien automatisch den Namen des Empfängers tragen, also Empfänger.pdf. Wie müsste das dann machen?
(Ich habe die Adressen in eine externe .adr-Datei gepackt)

Wenn mir nochmal jemand helfen könnte wäre ich sehr dankbar!

Bezug
                                
Bezug
schleife in latex: Antwort
Status: (Antwort) fertig Status 
Datum: 13:25 Do 23.07.2009
Autor: Sigma

Hallo,
welche Version klappt? die mit dem Batch? Wie sieht den deine Adressdatei aus? Wie werden die einzelnen Datensätze getrennt?

Sieht deine Adressdatei zufällig so aus?

1: \adrentry{Meyer}{Horst}{Zeisigweg 12\\12002 Berlin}{m}{}{}{Steuermann}{MEYER}
2: \adrentry{Schmidt}{Volker}{Drosselweg 2\\12005 Berlin}{m}{}{}{Ruderer}{SCHMIDT}
3: \adrentry{Müller}{Thomas}{Wachtelweg 64\\12001 Berlin}{m}{}{}{Ruderer}{MUELLER}
4: \adrentry{Bloch}{Monika}{Starweg 54\\12012 Berlin}{w}{}{}{Steuerfrau}{BLOCH}
5: \adrentry{Wolter}{Sybille}{Finkenweg 98a\\12001 Berlin}{w}{}{}{Ruderin}{WOLTER}



Bei mir funktioniert folgendes recht gut. Wobei der Parameter über alle Adressen läuft. Es müssen also beim einfügen der PDF-Seiten in die Dokumente mindest soviele Seiten vorhanden sein.
1:
2: chcp 1252
3: set /a test=0
4: fOR /F "tokens=2 delims={}" %%G IN (adress.txt) DO set "name1=%%G" &set /a test=test+1 &call :sub
5: pause
6: goto :eof
7:
8: :sub
9: pdflatex -jobname %name1% "\def\Para{%test%}\input LaTeX1"
10: goto :eof


Gruß Sigma

Bezug
                                        
Bezug
schleife in latex: Frage (beantwortet)
Status: (Frage) beantwortet Status 
Datum: 13:58 Do 23.07.2009
Autor: ps_tricks

Ja die Batch-Datei hat funktioniert, und die Adressdatei sieht so aus. Es funktioniert jetzt auch mit dem Dateinamen. Danke nochmal Sigma!!
Eine abschließende Frage habe ich noch, um die Syntax zu verstehen.
Wo steht der Befehl für den Dateinamen (also, wenn ich die Datei z.B. nach dem Vornamen, Straßennamen, oder sonstige Information aus der Adressdatei benennen möchte, was muss ich da ändern?)?




Bezug
                                                
Bezug
schleife in latex: Antwort
Status: (Antwort) fertig Status 
Datum: 14:25 Do 23.07.2009
Autor: Sigma

Hallo,

freut mich das es funktioniert.

Hier zum Beispiel mit Nachname und Vorname getrennt mit Bindestrich.
token ist die n-te Marke im Datensatz und dann einfach alphabetisch hochzählen %%G,%%H
1: chcp 1252
2: set /a test=0
3: fOR /F "tokens=2,3 delims={}" %%G IN (adress.txt) DO set "name1=%%G" &set "name2=%%H" &set /a test=test+1 &call :sub
4: pause
5: goto :eof
6:
7: :sub
8: pdflatex -jobname %name1%-%name2% "\def\Para{%test%}\input LaTeX1"
9: goto :eof


gruß sigma

PS. chcp ist notwendig damit die Umlaute aus der Adressdatei richtig dargestellt werden.

Bezug
                                                        
Bezug
schleife in latex: Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 15:25 Do 23.07.2009
Autor: ps_tricks

Jetzt ist mir alles klar. Tausend Dank!!

Bezug
                                                        
Bezug
schleife in latex: Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 11:04 Fr 24.07.2009
Autor: ps_tricks

Ne, sorry Sigma, is mir doch noch nicht so ganz klar. Ich hab grad versucht das noch abzuändern. Wenn ich jetzt z.B. möchte, dass die Datei nach dem Beruf (also in deinem Bsp. Steuermann, Ruderer, etc.) benannt wird, dann hab ich jetzt :
%%M
1:
2: chcp 1252
3: set /a test=0
4: fOR /F "tokens=8 delims={}" %%M IN (adress.txt) DO set "name1=%%M" &set /a test=test+1 &call :sub
5: pause
6: goto :eof
7:
8: :sub
9: pdflatex -jobname %name1% [mm] "\def\Para{%test%}\input [/mm] LaTeX1"
10: goto :eof

aber das klappt irgendwie nicht so wies soll.

Könntest du mir das doch noch mal ganz langsam erklären, dass ichs auch versteh...


Bezug
                                                                
Bezug
schleife in latex: leere token
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 12:39 Fr 24.07.2009
Autor: Sigma

Hallo,

hast du mal andere Token ausprobiert.
Das Problem ist das die Token mit leeren Zeichenketten nicht mitgezählt werden. In den Datensätzen sind dies die beiden nach dem Geschlecht.
Somit steht der Beruf schon an 6. Stelle. Wenn also in deinen Datensätzen an verschiedenen stellen leere Zeichenketten auftauchen, wird das Problem um einiges komplizierter.

Gruß Sigma

Bezug
                                                                        
Bezug
schleife in latex: Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 14:48 Fr 24.07.2009
Autor: ps_tricks

ok, alles klar, ich hab jetzt halt die Adressdatei adress.txt nach meinen bedürfnissen geändert, so dass es beliebig klappt.

Danke!

Bezug
Ansicht: [ geschachtelt ] | ^ Forum "LaTeX"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien


^ Seitenanfang ^
www.matheraum.de
[ Startseite | Forum | Wissen | Kurse | Mitglieder | Team | Impressum ]