Text einfügen, wenn Bilder in einem bestimmten Ordner vorhanden sind

Text einfügen, wenn Bilder in einem bestimmten Ordner vorhanden sind

mein Code ist der folgende

\documentclass[ngerman,german,14pt,twoside,openany]{scrbook} %Bei Hochformat [oneside] zusätzlich eintragen und linker Rand 3cm, 2 Spalten und 6cm Bildhöhe
\usepackage[left=2.5cm,right=2.5cm,top=2cm,bottom=2.5cm]{geometry}
%\usepackage[cam,width=216truemm,height=303truemm,center]{crop} %Beschnittzugabe; https://komascript.de/node/786
\usepackage[ngerman]{babel}
\usepackage[utf8]{inputenc}
\usepackage{rotating, graphicx}
\usepackage{graphicx}
\usepackage{tikz}
\usepackage{tikz-timing}
\usepackage{pgffor} % \foreach


\begin{document}


This is just text as part of a test... This is just text as part of a test...This is just text as part of a test... This is just text as part of a test...

\begin{center}
   \foreach \s in {1,...,1000}{%
   \IfFileExists{D:/folder1/folder2/pupil\s.jpg}%
 {\begin{tikzpicture}%
  \def\ig{%
   \includegraphics[width=.48\textwidth,keepaspectratio]{D:/folder1/folder2/pupil\s.jpg}}%
 \node [inner sep=0pt](mypicture) at (0,0) {\phantom{\ig}};%
 \clip[rounded corners=4mm] ($(mypicture.south west)+(1mm,1mm)$) rectangle ($(mypicture.north east)-(1mm,1mm)$);%
 \node[inner sep=0pt](mypicture) at (0,0) {\ig};%
\end{tikzpicture}
\vspace{2mm}
}}
\end{center}

\end{document} 

Hier meine Frage: Ich arbeite an einem Bericht für eine Schule. In diesem Bericht erhalten ca. 50 Schüler einen Text mit einigen Bildern. Ist es möglich, meinen Code so zu ändern, dass der Text nur erscheint, wenn der Bildordner „2“ Bilder enthält, andernfalls soll kein Text erscheinen. Wie kann ich das machen? Für jede Hilfe bin ich sehr dankbar! Danke!

Antwort1

Sie können den Präambeltext in die durch „ s=1und“ geschützte Schleife verschieben \IfFileExists, sodass er nur einmal angezeigt wird, wenn die Schleife überhaupt iteriert, und nicht erscheint, wenn keine Dateien vorhanden sind.

\documentclass[ngerman,german,14pt,twoside,openany]{scrbook} %Bei Hochformat [oneside] zusätzlich eintragen und linker Rand 3cm, 2 Spalten und 6cm Bildhöhe
\usepackage[left=2.5cm,right=2.5cm,top=2cm,bottom=2.5cm]{geometry}
%\usepackage[cam,width=216truemm,height=303truemm,center]{crop} %Beschnittzugabe; https://komascript.de/node/786
\usepackage[ngerman]{babel}
\usepackage[utf8]{inputenc}
\usepackage{rotating, graphicx}
\usepackage{graphicx}
\usepackage{tikz}
\usepackage{tikz-timing}
\usepackage{pgffor} % \foreach


\begin{document}


\begin{center}
  \foreach \s in {1,...,10}{%


   \IfFileExists{D:/folder1/folder2/pupil\s.jpg}%
   {%
    \ifnum\s=1   
\parbox{\textwidth}{This is just text as part of a test... This is just text as part of a test...This is just text as part of a test... This is just text as part of a test...}
\fi
\begin{tikzpicture}%
  \def\ig{%
   \includegraphics[width=.48\textwidth,keepaspectratio]{D:/folder1/folder2/pupil\s.jpg}}%
 \node [inner sep=0pt](mypicture) at (0,0) {\phantom{\ig}};%
 \clip[rounded corners=4mm] ($(mypicture.south west)+(1mm,1mm)$) rectangle ($(mypicture.north east)-(1mm,1mm)$);%
 \node[inner sep=0pt](mypicture) at (0,0) {\ig};%
\end{tikzpicture}
\vspace{2mm}
}}
\end{center}

\end{document} 

Antwort2

Mit einem aktuellen Texlive oder Miktex können Sie das l3sys-queryPaket (Teil des Core-Latex tools-Bundles) verwenden und dann

\QueryFilesTF{*.jpg}{\node....\includegraphics{#1}}{}{No Files found}

verwandte Informationen