Insira texto se existirem imagens em uma determinada pasta

Insira texto se existirem imagens em uma determinada pasta

meu código é o seguinte

\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} 

Aqui está a minha pergunta: estou trabalhando em um relatório para uma escola. Neste relatório aproximadamente 50 alunos receberão um texto com algumas fotos. É possível modificar meu código de forma que o texto só apareça quando a imagem "pasta 2" contém imagens, caso contrário nenhum texto deverá aparecer. Como isso pode ser feito? Qualquer ajuda é muito apreciada! Obrigado!

Responder1

Você pode mover o texto do preâmbulo para o loop protegido por s=1e \IfFileExistspara que ele apareça apenas uma vez se o loop iterar e não apareça se não houver arquivos.

\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} 

Responder2

Com um Texlive ou miktex atual você pode usar o l3sys-querypacote (parte do toolspacote principal de látex) e depois usar

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

informação relacionada