goLaTeX - Mein LaTeX-Forum

Mein LaTeX-Forum


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

Forenstatistik:
Beiträge: 101644
Top-Poster: Johannes_B (5071)

Wir begrüßen unseren neuesten Benutzer Johannes2020.

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

Automatisches Einfügen von Bildern über eine Schleife

 

iPat167
Forum-Newbie
Forum-Newbie

Beiträge: 2
Anmeldedatum: 03.05.18
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 03.05.2018, 13:46     Titel: Automatisches Einfügen von Bildern über eine Schleife
  Antworten mit Zitat      
Hallo,

ich habe folgendes Problem:
Für einen automatischen Report möchte ich alle Bilder (ca. 20-30) aus dem Ordner der Tex-Datei über eine Schleife einfügen. Über \whiledo funktioniert das auch wunderbar.
Jetzt habe ich allerdings das Problem, dass mir mein Postprocessing Programm (FEM Berechnungssoftware) die Bilder in folgender Dateibennenung abspeichert:

page_1_Seitenbezeichnung.png
page_2_Seitenbezeichnung.png
page_3_Seitenbezeichnung.png
...

Leider funktioniert mein Code bisher nur für folgende Konvention:

page-1.png
page-2.png
page-3.png
...

Probleme bereiten mir die "_" im Dateinamen sowie das ich die Seitenbezeichnung gerne als Kapitelüberschrift und Bildunterschrift verwenden möchte.

Code

\documentclass[12pt]{scrartcl}
\usepackage{ifthen}
\usepackage{graphicx}
\newcounter{ct}

\newcommand{\bild}[1]{%
   \section{#1}
   \begin{figure}[h]
      \centering
      \includegraphics[width=1\textwidth]{#1}
      \caption{#1}
      \label{abb:#1}
   \end{figure}
   }

\begin{document}

\setcounter{ct}{0}                                 % counter auf 0 setzen

\whiledo{\value{ct} < 9999}
      {\stepcounter{ct}
         \IfFileExists{page-\arabic{ct}}{
         \bild{page-\arabic{ct
}}
      }{}%
      }

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

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 03.05.2018, 14:43     Titel:
  Antworten mit Zitat      
Der Unterstrich ist normalerweise nur im Mathemodus erlaubt und dient dann zur Kennzeichnung eines Index. Mit \string kann man jedoch ein normales Zeichen daraus machen:
Code
\begin{filecontents*}{page_1.pdf}
%PDF-1.4
%%%%%
1 0  obj
<<
/Pages 2 0 R
/Type /Catalog
>>
 endobj
2 0  obj
<<
/Kids [3 0 R]
/Type /Pages
/Count 1
>>
 endobj
3 0  obj
<<
/Rotate 0
/Parent 2 0 R
/MediaBox [0 0 72 72]
 /Resources
<<
/ExtGState 4 0 R
/Font 5 0 R
/ProcSet [/PDF /Text]
>>
/pdftk_PageNum 1
/Type /Page
/Contents 6 0 R
>>
 endobj
4 0  obj
<<
/R7 7 0 R
>>
 endobj
5 0  obj
<<
/R8 8 0 R
>>
 endobj
6 0  obj
<<
/Length 135
>>
stream
q 0.1 0 0 0.1 0 0 cm
/R7 gs
10 w
0 G
0 0 m
720 720 l
0 720 l
720 0 l
S
0 g
q
10 0 0 10 0 0 cm BT
/R8 72 Tf
1 0 0 1 0 0 Tm
(A)Tj
ET
Q
Q

 endstream
 endobj
7 0  obj
<<
/Type /ExtGState
/OPM 1
>>
 endobj
8 0  obj
<<
/BaseFont /Times-Roman
/LastChar 65
/Subtype /Type1
/FontDescriptor 9 0 R
/Widths [722]
/Type /Font
/Encoding /WinAnsiEncoding
/FirstChar 65
>>
 endobj
9 0  obj
<<
/FontName /Times-Roman
/StemV 105
/CharSet (/A)
/Ascent 674
/Flags 65568
/Descent 0
/ItalicAngle 0
/MissingWidth 250
/FontBBox [0 0 706 674]
/Type /FontDescriptor
/CapHeight 674
>>
 endobj
10 0  obj
<<
/Producer (GPL Ghostscript 9.06)
/ModDate (D:20140426202438+01'00')
/CreationDate (D:20140426202438+01'00')
>>
endobj xref
0 11
0000000000 65535  f
0000000015 00000  n
0000000066 00000  n
0000000125 00000  n
0000000308 00000  n
0000000341 00000  n
0000000374 00000  n
0000000563 00000  n
0000000610 00000  n
0000000774 00000  n
0000000975 00000  n
trailer

<<
/Info 10 0 R
/Root 1 0 R
/Size 11
/ID [<4ca1370d594acd28b9d948a5e8b925c3> <4ca1370d594acd28b9d948a5e8b925c3>]
>>
startxref
1106
%%EOF
\end{filecontents*}
\documentclass[12pt]{scrartcl}
\usepackage{ifthen}
\usepackage{graphicx}
\newcounter{ct}

\newcommand{\bild}[1]{%
   \section{#1}
   \begin{figure}[h]
      \centering
      \includegraphics[width=1\textwidth]{#1}
      \caption{#1}
      \label{abb:#1}
   \end{figure}
   }

\begin{document}

\setcounter{ct}{0}                                 % counter auf 0 setzen

\whiledo{\value{ct} < 9999}
      {\stepcounter{ct}
         \IfFileExists{page\string_\arabic{ct}.pdf}{
         \bild{page\string_\arabic{ct
}}
      }{}%
      }

\end{document}

Der Rest ist dagegen nicht so einfach, weil TeX keine Verzeichnisbefehle hat, man also nicht feststellen kann, wie die Datei page_Nr_* weiter heißt.

Siehe auch: https://texwelt.de/wissen/fragen/93.....tex-dateien-einlesen/9404

iPat167
Forum-Newbie
Forum-Newbie

Beiträge: 2
Anmeldedatum: 03.05.18
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 03.05.2018, 19:43     Titel:
  Antworten mit Zitat      
Danke für den \string Befehl. Das funktioniert einwandfrei.

Das mit der fehlenden Unterstützung für Verzeichnisstruktur in LaTeX ist ärgerlich. Zur Not müsste ich den Umweg über ein "tcl-script" für einen TeX-Export im Postprocessor (HyperWorks) gehen, was allerdings sehr kompliziert wäre...

Vielleicht hat ja noch jemand eine andere Idee Smile
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