Re: xr-hyper: reference zu Datei name

Uwe Brauer <[email protected]>
Newsgroups gmane.comp.tex.german
Message-ID <[email protected]>
>>> "UB" == Uwe Brauer <(via tex-d-l Mailing List) <[email protected]>> writes:


Ich habe zwei Artikel gefunden, die etwas ähnliches versuchen.

https://tex.stackexchange.com/questions/180975/including-title-of-document-in-external-reference

Die Orginalfrage war, den Titel des externen Dokuments zu ermitteln.
Die angebotene Lösung ermittelt aber nur die Sectionsüberschrift was nameref auch kann. 
--8<---------------cut here---------------start------------->8---

\documentclass{article}
\usepackage{xr-hyper}
\usepackage{hyperref}

\begin{document}
\chapter{Foo}\label{Foo}
Bar.
\end{document}
--8<---------------cut here---------------end--------------->8---

--8<---------------cut here---------------start------------->8---

\documentclass{article}
\usepackage{xr-hyper}
\usepackage{hyperref}

\makeatletter
\def\eref{\@ifstar \@refstar \Toref}
\def\Toref #1{\NR@setref {#1}\firstplusthree {#1}}
\makeatother
\def\firstplusthree#1#2#3#4#5{#1: #3}

\externaldocument{fileA}

\begin{document}
\eref{Foo}
\end{document}
--8<---------------cut here---------------end--------------->8---

Aber dieses Konstrukt zeigt nicht den Dateinamen.

Könnte man mit einer geeigneten Modifikation den Dateinamen ermitteln?

Bei dem zweiten Problem soll der Name der Bilddatei, die mit
inclugraphics eingebunden wird ermittelt wird, das gelingt, im folgenden
Beispiel, nach dem Aufruf von includegrapics. Könnte man das für
externaldocument erweitern?

https://stackoverflow.com/questions/3736292/in-latex-is-there-a-way-to-include-the-filename-of-a-graphic-into-a-caption

--8<---------------cut here---------------start------------->8---

\documentclass{article}

\usepackage{graphicx,etoolbox}

\makeatletter
\patchcmd{\Gin@setfile}% <cmd>
  {\ProvidesFile}% <search>
  {\xdef\imgfilename{#3}\ProvidesFile}% <replace>
  {}{}% <success><failure>
\makeatother

\begin{document}

\begin{figure}
  \centering
  \includegraphics[width=.5\linewidth]{example-image}
  \caption{Image: \imgfilename}
\end{figure}

\end{document}
--8<---------------cut here---------------end--------------->8---

Aber das funktioniert nur für Bilder die mit incudegraphics eingebunden werden.

Vielleicht fällt jemand mit besseren Programmierkenntnissen etwas ein?

Gruß

Uwe Brauer
smime.p7s (application/pkcs7-signature, 5.5 KB) - not displayed
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.