我找到了一种将 PDF 文档包含到我的 LaTeX 文档中的解决方案,与使用 不同\usepackage{pdfpages}
。
\usepackage{pdfpages}
它可以很好地将 PDF 中的页面作为整页放在我想要的位置。但今天我想包含一个 PDF 文档,并保留我的整体文档样式,包括页码、页眉和页脚等。这可以通过使用命令来完成\includegraphics[width=\textwidth,page=1]{Document.pdf}
。PDF 的指定页面像图形一样集成到我的 LaTeX 文档中。因此,它只覆盖了原本会被文本、页脚和页眉覆盖的区域,所有内容都保持完整。这就是我使用以下解决方案实现的效果。
附注:我想要集成的 PDF 文档是 A5 格式,而我的 LaTeX 文档是 A4 格式(均为纵向)。令我惊讶的是,纵向模式下的 A5 刚好填满了我的 A4 LaTeX 文档中可用于文本的整个空间。因此,我可以轻松地将 1 页 PDF 包含在 1 页 LaTeX 页面上,而且看起来不错。
答案1
包含多个页面可能很繁琐,因为includegraphics
必须针对每个页面调整命令(page=1、page=2、page=3,...)。相反,我用 C 编写了一个简短的程序,创建可以插入 LaTeX 文档的 tex 代码:
#include <stdio.h>
int a=0, b=0, i=0;
int main()
{
FILE *f = fopen("myfile.tex","w");
for (i=1 ; i<b+1 ; i++)
{
fprintf(f,"\\includegraphics[width=\\textwidth,page=%d]{document.pdf}\n\n",i);
}
return 0;
}
这将创建一个文件myfile.tex
,其中\includegraphics[width=\textwidth,page=1]{Document.pdf}
后跟双换行符,表示第 1 到第 1 页b
(因此b
应该是您要包含的最后一页的页码,只需在第二行 ( ) 中更改它即可int a=0, b=0, i=0;
)。此外,将部分更改 {document.pdf}
为您要包含的 PDF 的名称(您要告诉 LaTeX 的名称)。
一旦您更改b
为想要包含的最后一页,并更改{document.pdf}
为适合 LaTeX 的名称/位置,您就可以保存此文件,例如write.c
(结尾.c
在这里很重要,因为它是一个用 C 编写的程序)。
然后,打开终端并转到文件位置,例如
cd ./MyCodeFolder
确保您在正确的文件夹中,并且您的write.c
文件在那里:
ls
列出当前文件夹中的所有文件。如果是,则编译它,得到一个可执行程序:
gcc write.c -o write.exe
gcc
是编译器、write.c
我们刚刚创建的源代码以及write.exe
按下回车键后编译器将创建的程序。
现在,执行write.exe
。这将创建myfile.tex
。最后一步:转到您的 LaTeX 代码,确保Document.pdf
也在那里,使用 将其添加myfile.tex
并包含在您想要在 LaTeX 文档中使用 PDF 页面的位置
\input{myfile.tex}
利润。