代码见 https://paste.ubuntu.com/p/xf4h7hQY7C/
y.pdf
y.png
不使用graphicspath,在includegraphics时使用绝对路径该pdf文件可被导入。
复现编译方式 xelatex -output-directory=C:/tmp filebasename
2021-09-24 15:49 补充,因为回答者认为这不是latex的问题,所以我对这个不友好的回答补充一下。https://github.com/latex3/latex2e/issues/145 。这是pdflatex -output-directory + graphicspath 不能找到pdf的bug,已经被更新的texlive修复,目前我自己也能通过将xelatex 直接改成pdflatex解决问题。但是似乎xelatex的没被一起解决。
2021-09-24 17:00 补充,与pdf文件无关,发现pdf的命名对结果有影响。即更名为a.pdf便失败,更名为b.pdf正常。试了几个,a 不行,b可以,c不行,d可以
e可以,s不行, w行, x行, y不行,z行。
latex书写过程中尽量避免使用到主 tex
文件的父目录, 这可能导致 latex 没有权限使用这些目录
我这里进行了测试,并没有复现问题,我的系统是 ArchLinux,我进行了文件的一些修改
这是我的系统信息
以及相关的 tex 版本:
XeTeX 3.141592653-2.6-0.999993
% main.tex
\documentclass{book}
\usepackage[UTF8]{ctex}
\usepackage{graphicx}
\graphicspath{{./img/}}
\begin{document}
\chapter{章}
\includegraphics[width=\textwidth]{y.pdf} %fail
%\includegraphics[width=\textwidth]{y.png} %works
\end{document}
以及我编译前的目录树
➜ tree
.
├── img
│ └── y.pdf
├── main.tex
└── test
然后我使用的编译命令为
xelatex -output-directory=test main
以及编译后的目录树
➜ tree
.
├── img
│ └── y.pdf
├── main.tex
└── test
├── main.aux
├── main.log
└── main.pdf
编译的结果:
这次编译的 log: https://pastebin.ubuntu.com/p/XYhTcVzhyt/
补充了复现的编译方式,您再看看
吃饱了撑的用绝对路径,还在C盘下面折腾,Windows 对这个盘符有权限限制的吧,用管理员身份编译吧。我老早就把 MWE 和图片文件删了,这不是 LaTeX 的问题。
@u1077 不分区用c盘有问题吗?