我想知道是否有任何方法可以包含存档中的图像。我这样做的原因是,我有一个项目,其中使用了大量精灵(每个精灵都有不同的版本)。拥有几千个图像文件有点麻烦,例如,在文件系统中复制项目需要很长时间。将所有图像打包在一起会方便得多(每个版本可能一个包)。
目前还没有办法做类似的事情:
\includegraphics{VendorA.tar?1F600.png}
或者
\graphicspath{ {VendorA.tar} {VendorB.zip} }
这样的事情是不可能的吗或者有办法添加它吗?
编辑: 我接受了 Sergei 的回答,因为这确实是一个选择。我仍然很好奇是否可以在 tex(或者可能是 luatex)中完成此操作,而无需依赖操作系统。安装 zip 确实需要一些设置,如果不同机器上的不同用户处理一个文档,可能会有点麻烦。
答案1
您不能直接从存档文件中包含图形,但可以使用例如将存档挂载到目录中,fuse-zip
并从挂载的目录中包含图形。例如,在 Debian Linux 中,以下内容对我有用:
$ cat test.tex
\documentclass{article}
\usepackage{graphicx}
\begin{document}
\includegraphics{figures/figure1.png}
\includegraphics{figures/figure1.png}
\end{document}
$ unzip -l figures.zip
Archive: figures.zip
Length Date Time Name
--------- ---------- ----- ----
43345 2016-12-22 16:11 figure1.png
43345 2016-12-22 16:11 figure2.png
--------- -------
86690 2 files
$ mkdir figures
$ ls figures
./ ../
$ fuse-zip -r figures.zip figures
$ ls figures
./ ../ figure1.png figure2.png
$ pdflatex test.tex
.............
Output written on test.pdf (2 pages, 52581 bytes).
Transcript written on test.log.