Путь к вашим рисункам — texblog
Большинство людей предпочитают не сохранять свои рисунки в том же каталоге, что и сам файл tex , поскольку он быстро загромождается. Распространенным решением является сохранение всех рисунков в подпапке основного каталога и использование
\includegraphics{figures/filename} вместо
\includegraphics{filename} для их импорта ( к используйте \includegraphics вам нужен пакет graphicx). Лично я часто храню свои рисунки в подпапке общей родительской папки или в совершенно другом каталоге, в зависимости от проекта, над которым я работаю. Если рисунки сохранены в родственном каталоге, мы можем использовать ../ для доступа к родительскому каталогу.
\includegraphics{../figures/filename} Его также можно использовать несколько раз для перехода вверх по нескольким папкам.
\includegraphics{.
./../figures/filename} Также можно указать полный путь к рисунку.
\includegraphics{/Users/me/Documents/project/figures/filename} Определение пути к графике
Если в документе много рисунков, постоянное добавление пути может стать утомительным, иначе документ будет выглядеть беспорядочно. . С командой \graphicspath пакет graphicx позволяет указать один или несколько путей для поиска рисунков. По умолчанию для этого пути используется папка с файлом tex .
\usepackage{graphicx} % Загрузка пакета
\graphicspath{{figures/}} %Установка пути к графике
...
\начать{документ}
\includegraphics{имя файла} %Импорт рисунка
\end{document} Мы также можем определить несколько каталогов для поиска рисунков.
\graphicspath{{figures/}{../figures/}{C:/Users/me/Documents/project/figures/}} Каждый путь должен заканчиваться на / и заключаться в фигурные скобки { } , даже если указан только один путь.
Только указанные каталоги будут искать фигуры, а не их подкаталоги. Чтобы включить подкаталоги, они должны быть указаны отдельно как их собственные пути. Кроме того, вы можете снова добавить подкаталоги вручную с каждым рисунком. Доступ к подкаталогам путей, указанных в , теперь намного проще. Когда вы используете \graphicspath вы по-прежнему можете определять пути фигур по отдельности.
\usepackage{graphicx} % Загрузка пакета
\graphicspath{{figures/}} %Установка пути к графике
...
\начать{документ}
\includegraphics{filename1} %Импорт рисунка
\includegraphics{topic1/filename1} %Импорт рисунка из подкаталога пути к графике
\includegraphics{/Users/me/Documents/project/photos/filename} %Импорт фигуры из пути, отличного от графики
\end{document} Важно помнить, что могут возникнуть проблемы, когда несколько файлов с одинаковыми именами существуют по разным путям. Порядок указания путей будет определять, какой файл будет импортирован в таком случае (файл, указанный в самом раннем указанном пути).
Пути к каталогам с пробелами
Хотя все мы знаем, что нам следует избегать каталогов с пробелами в именах, это все же случается. Самый большой виновник в моей системе — «Google Диск». У нас есть в основном два варианта: (i) добавление двойных кавычек " " вокруг каждого пути или (ii) использование параметра пробела в пакете grffile.
Вариант 1
Если вы добавляете путь к каждой цифре вручную, вы можете просто добавить двойные кавычки " " вокруг пути.
\includegraphics{"/Users/me/Google Drive/project/figures/filename"} Если вы указываете расширение имени файла, вам нужно использовать дополнительный набор фигурных скобок { } вместо двойные кавычки " " вокруг пути.
\includegraphics{{/Users/me/Google Drive/project/figures/filename.png}} Чтобы определить \graphicspath с пробелами, нам нужно заключить путь в двойные кавычки " " .
\graphicspath{{"/Users/me/Google Drive/project/figures/"}} Вариант 2
Определение \graphicspath (или обычного пути) с пробелами можно выполнить с помощью пробела пакета grffile.
\usepackage{graphicx} % Загрузка пакета
\usepackage[space]{grffile} % Загрузка пакета
\graphicspath{{/Users/me/Google Drive/project/figures/}} %Установка пути к графике
...
\начать{документ}
\includegraphics{имя файла} %Импорт рисунка
\includegraphics{/Users/me/Google Drive/project/photos/filename} %Импорт фигуры из пути, отличного от графики
\конец{документ} Вот так:
Нравится Загрузка…
Как /includegraphics из подкаталога основной папки изображений, используя подфайлы — TeX
Простите аналогию с семьей, но это может помочь вы понимаете, как устроены ваши родственники и как на них ссылаются
Итак, вы папка, давайте зовем вас Томасом, и у вас есть родитель, давайте зовем их слепыми
вы помещены в систему как /blindhardt/thomas, но для самостоятельной ссылки вы можете использовать псевдоним
»
у вас есть дети /blindhardt/thomas/janet и /blindhardt/thomas/john
у них могут быть такие прозвища, как preface и chap1
для обозначения отношения вашего ребенка к себе вы можете сказать ./preface или ./chap1
для вашего отца вы можете сказать .. и для братьев и сестер они могут быть ../старше или ../младше
ваше генеалогическое древо теперь может быть
/blindhardt/старше
/Томас/
/ томас / предисловие
/Томас/глава1
/моложе
Хорошо, это основная теория ваших относительных путей, теперь к вашему ответу
Одна часть вас, хранитель Фомы (семейной библии), известна как main.tex
markellos четко показывает , что если эта часть вас (main.tex) идентифицируется как
\providecommand{\main}{. }
тогда любой ../child/story.tex может ссылаться на вас как на своего провайдера
\providecommand{\main}{..} т.е. на своего родителя
также их дополнительный оператор
\documentclass[\main/main.tex]{subfiles}
подтверждает, что они принадлежат к той же подгруппе (классу), что и вы
как семья вы соглашаетесь хранить все свои графические активы в
/blindhart/somewhere/vault, но как хранитель вы хотите называть его
/blindhart/thomas/images
% вот вам путь к хранилищу ./images и следующее поколение {\main\images/}
\graphicspath{{images/}{\main/images/}}
ОК, пока ничего нового, скажем, вы храните папку (ABC) в этом хранилище
и вам, и вашим детям теперь потребуется перекрестный индекс.
\graphicspath{{images/}{\main/images/}{images/ABC/}{\main/images/ABC/}}
Итак, теперь не имеет значения, находится ли pic1.png или fig1.pdf в main/images или /images/ABC
\includegraphics[width=4cm]{pic1 }
Main.tex (изменена только одна строка)
\providecommand{\main}{.
}
\documentclass{статья}
\usepackage[utf8]{inputenc}
\usepackage[английский]{babel}
\usepackage{graphicx}
% вот НОВЫЙ путь
\graphicspath{{images/}{\main/images/}{images/ABC/}{\main/images/ABC/}}
\usepackage{подфайлы}
\usepackage{слепой текст}
\начать{документ}
\подфайл{\main/chap1/chap1}
\конец{документ}
chap1.tex (без изменений, кроме более широкого принятия)
\providecommand{\main}{..}
\documentclass[\main/main.tex]{подфайлы}
\начать{документ}
\begin{рисунок}[bh]
\центрирование
% f1 может быть любым принятым изображением (png pdf и т. д.) будьте осторожны, если есть два в разных местах, тогда порядок станет важным.
% это может быть ./f1.png это может быть ../images/f1.pdf или даже ../images/ABC/f1.eps
\includegraphics[ширина=4см]{f1}
\label{рис:img1}
\caption{Обучающий логотип ShareLaTeX}
\конец{рисунок}
Здравствуйте, вот текст...
\конец{документ}
Очевидно, /older и его /children могут следовать одному и тому же шаблону, но если вы все хотите получить доступ к фамильному гербу в /blindhardt/images, тогда вы начинаете добавлять гораздо больше вложенных относительных слоев, и может быть проще включить абсолютный адрес для таких эталонные изображения, таким образом, вы и ваши братья и сестры можете добавить
\graphicspath{{c:\familydocs\blindhardt\images/}{images/}{\main/images/}{images/ABC/}{\main/images/ABC/ }}
Есть способы включить пробелы выше, но для полной совместимости я предлагаю не включать
Все вышесказанное основано на формулировке вашего вопроса, однако каждый tex-файл может сам по себе посещать публичную библиотеку.

./../figures/filename}
tex]{subfiles}
}
\documentclass{статья}
\usepackage[utf8]{inputenc}
\usepackage[английский]{babel}
\usepackage{graphicx}
% вот НОВЫЙ путь
\graphicspath{{images/}{\main/images/}{images/ABC/}{\main/images/ABC/}}
\usepackage{подфайлы}
\usepackage{слепой текст}
\начать{документ}
\подфайл{\main/chap1/chap1}
\конец{документ}