我有一个tex
文件,其中包含\includegraphics
一个图像,位于同一目录中。如果运行该文件,texstudio
则会包含该图像。
如果在从程序启动的进程中运行同一个文件,则找不到该文件。如果地址是完整路径,则可以找到它,但找不到相对路径(相对于文件tex
,如)\includegraphics{DSC08138.JPG}
。这是什么原因造成的?
lualatex
使用参数调用,-interaction=nonstopmode --output-directory=dir1 filename.tex
其中 是存储图像的dir1
目录。filename.tex
代码的相关部分是:
putIOwords ["writePDF2text 1 infn", showT infn]
let dir1 = getParentDir fnres :: FilePath
let out1 = "--output-directory=" <> (dir1)
putIOwords ["writePDF2text 2 out1", showT out1]
callIO $ Sys.callProcess
"lualatex"
[out1, "-interaction=nonstopmode", toFilePath infn]
答案1
您的程序应该从 filename.tex 所在的目录启动,或者cd
在运行 lualatex 之前应该执行(更改目录)到该目录(变量 dir1)(luatex 没有“--input-directory”开关)。
抱歉,我不认识该代码示例(Basic-ish?),所以我现在无法展示确切的修复方法。
如果它是“DOS”样式的批处理脚本,那么该cd
命令就是您想要的。