![No utilizar bibliografía en otro archivo tex](https://rvso.com/image/330731/No%20utilizar%20bibliograf%C3%ADa%20en%20otro%20archivo%20tex.png)
Tengo dos archivos .tex: reftest.tex que contiene los detalles principales: referencia, figura, ecuación; y cross_ref.tex. En cross_ref.tex, quiero hacer una referencia cruzada de la cita de referencia en el archivo reftest.tex. Sin embargo, no se pudo citar. ¿Podrías ayudarme a solucionarlo? este es mi codigo
En reftest.tex:
\documentclass[preprint,12pt, sort&compress]{elsarticle}
\def\bibsection{\section*{References}}
\usepackage[draft]{hyperref}
\usepackage{graphicx}
\usepackage{caption,subfig}
\usepackage{amssymb}
\usepackage{amsmath}
\begin{document}
This is ref \cite{S_Goossens}
\begin{figure}
\centering \includegraphics[width=0.5\linewidth]{example-image-a}
\caption{This is caption}
\label{fig:2}
\end{figure}
\begin{equation}
\label{eq:1}
y=x
\end{equation}
\begin{thebibliography}{00}
%% Text of bibliographic item
\bibitem{S_Goossens}SMichel Goossens, Frank Mittelbach, and Alexander Samarin Addison-Wesley, Reading, Massachusetts, 1993.
\end{thebibliography}
\end{document}
En cross_ref.tex
\documentclass[preprint,12pt, sort&compress]{elsarticle}
\def\bibsection{\section*{References}}
\usepackage[draft]{hyperref}
\usepackage{graphicx}
\usepackage{caption,subfig}
\usepackage{amssymb}
\usepackage{amsmath}
\usepackage{xr}
\externaldocument{reftest}
\begin{document}
This is ref \cite{S_Goossens} in the reftest file
Figure \ref{fig:1} is figure in the reftest file
The Eq. \eqref{eq:1} is a equation
\end{document}
Mi salida no puede mostrar el número de cita en el archivo cross_ref.tex
Respuesta1
Con xcite
él parece estar funcionando. Tenga en cuenta xr-hyper
en lugar de `xr y el orden de carga del paquete.
reftest.tex
\documentclass[preprint,12pt, sort&compress]{elsarticle}
\def\bibsection{\section*{References}}
\usepackage{graphicx}
\usepackage{caption,subfig}
\usepackage{amssymb}
\usepackage{amsmath}
\usepackage[draft]{hyperref}
\begin{document}
This is ref \cite{S_Goossens}
\begin{figure}
\centering \includegraphics[width=0.5\linewidth]{example-image-a}
\caption{This is caption}
\label{fig:1}
\end{figure}
\begin{equation}
\label{eq:1}
y=x
\end{equation}
\begin{thebibliography}{00}
%% Text of bibliographic item
\bibitem{S_Goossens} Michel Goossens, Frank Mittelbach, and Alexander Samarin
Addison-Wesley, Reading, Massachusetts, 1993.
\end{thebibliography}
\end{document}
crossref.tex
\documentclass[preprint,12pt, sort&compress]{elsarticle}
\def\bibsection{\section*{References}}
\usepackage{graphicx}
\usepackage{caption,subfig}
\usepackage{amssymb}
\usepackage{amsmath}
\usepackage{xcite}
\usepackage{xr-hyper}
\usepackage[draft]{hyperref}
\externaldocument{reftest}
\externalcitedocument{reftest}
\begin{document}
This is ref \cite{S_Goossens} in the reftest file
Figure \ref{fig:1} is figure in the reftest file
The Eq. \eqref{eq:1} is a equation
\end{document}
Salida decrossref.tex
Respuesta2
Bien, aquí tienes una solución.
Si utiliza un archivo bibliográfico externo (literatur.bib):
@BOOK{S_Goossens,
title = {Some title},
publisher = {Addison-Wesley},
year = {1993},
author = {Goossens, S. Michel and Mittelbach, Frank and Samarin, Alexander},
address = {Reading, Massachusetts},
owner = {polz},
timestamp = {2016.03.24}
}
Sólo necesitas cambiar tu reftest.tex para usar la bibliografía externa en lugar de usar el thebibliography
entorno:
\documentclass[preprint,12pt, sort&compress]{elsarticle}
\def\bibsection{\section*{References}}
\usepackage[draft]{hyperref}
\usepackage{graphicx}
\usepackage{caption,subfig}
\usepackage{amssymb}
\usepackage{amsmath}
\begin{document}
This is ref \cite{S_Goossens}
\begin{figure}
\centering \includegraphics[width=0.5\linewidth]{example-image-a}
\caption{This is caption}
\label{fig:1}
\end{figure}
\begin{equation}
\label{eq:1}
y=x
\end{equation}
\bibliography{literatur}{}
\bibliographystyle{plain}
\end{document}
Si ahora incluye el \usepackage{bibentry}
comando en el preámbulo de su cross_rex.tex e incluye literatur.bib vía \nobibliography{literatur}{}
, lo que evita imprimir la bibliografía, entonces funciona de la manera que desea.
\documentclass[preprint,12pt, sort&compress]{elsarticle}
\def\bibsection{\section*{References}}
\usepackage[draft]{hyperref}
\usepackage{graphicx}
\usepackage{caption,subfig}
\usepackage{amssymb}
\usepackage{amsmath}
\usepackage{xr}
\externaldocument{reftest}
\usepackage{bibentry}
\begin{document}
This is ref \cite{S_Goossens} in the reftest file
Figure \ref{fig:1} is figure in the reftest file
The Eq. \eqref{eq:1} is a equation
\nobibliography{literatur}{}
\end{document}