750

I am trying to insert a PDF or doc file as an appendix in my LaTeX file. Do you know how I can do this?

4
  • 16
    Are you just appending the pdf, or do you want to embed it like a picture? Commented Apr 29, 2010 at 16:52
  • 17
    Note to anyone thinking of suggesting we migrate this to text.stackexchange - we can't. It's from 2010 which makes it far too old to migrate. Commented Mar 27, 2015 at 17:11
  • 1
    See also: Insert PDF file in LaTeX document Commented Jan 22, 2016 at 19:36
  • See also: tex.stackexchange.com/questions/8662/… Commented Sep 17, 2017 at 16:38

7 Answers 7

1102

Use the pdfpages package.

\usepackage{pdfpages} 

To include all the pages in the PDF file:

\includepdf[pages=-]{myfile.pdf} 

To include just the first page of a PDF:

\includepdf[pages={1}]{myfile.pdf} 

Run texdoc pdfpages in a shell to see the complete manual for pdfpages.

Sign up to request clarification or add additional context in comments.

15 Comments

To be clear, you need to specify the pages you wish to include, i.e. \includepdf[pages={1,3,5}]{myfile.pdf} would include pages 1, 3, and 5 of the file. To include the entire file, you specify pages={-}, where {-} is a range without the endpoints specified which default to the first and last pages, respectively.
The first two things I had to also do were to scale and to reenable my outer page design (to show page numbers again) which can both be set using the configuration, e.g.: \includepdf[pages=-,scale=.8,pagecommand={}]{file}
it does not seem to work with latex beamer; here is how to do it with beamer: tex.stackexchange.com/questions/57441/…
The offset option is useful \includepdf[page={-},offset=<offset in x>mm <offset in y>mm]{myfile.pdf}
@Kusavil from the (docs)[mirrors.sorengard.com/ctan/macros/latex/contrib/pdfpages/…, you can specify ranges, e.g. if you wanted to drop page 49 out of 100 total, you could use pages={1-48,50-100}. Not as simple as say something like, pages={!49}, but not that arduous.
|
107

For putting a whole pdf in your file and not just 1 page, use:

\usepackage{pdfpages} \includepdf[pages=-]{myfile.pdf} 

2 Comments

you can just use \includepdf{myfile.pdf}
@CroCo yeah, for some reason sometimes it works and sometimes it doesn't, sorry for misleading you :(
62
\includegraphics{myfig.pdf} 

5 Comments

yes i know how to include a figure.pdf but the file i have to include has more then 1 page.
Hi dagray, your answer could have been what Guido was looking for, but even than, just writing a little piece of code without any further explanation is unhelpful.
@LeoR I disagree. Question is essentially: "how to insert a pdf in latex?" answer is what dagray wrote. The question is not "how do you insert pdf into latex and can you explain how it works". There is enough info in this answer to find the rest out yourself.
Still, the question explicitly declares it's a DOC/PDF for an appendix, so it's probably not one page long.
note a \usepackage{graphicx} is required to be able to use this command
44

The \includegraphics function has a page option for inserting a specific page of a PDF file as graphs. The default is one, but you can change it.

\includegraphics[scale=0.75,page=2]{multipage.pdf} 

You can find more here.

Comments

21

I don't think there would be an automatic way. You might also want to add a page number to the appendix correctly. Assuming that you already have your pdf document of several pages, you'll have to extract each page first of your pdf document using Adobe Acrobat Professional for instance and save each of them as a separate pdf file. Then you'll have to include each of the the pdf documents as images on an each page basis (1 each page) and use newpage between each page e,g,

\appendix \section{Quiz 1}\label{sec:Quiz} \begin{figure}[htp] \centering{ \includegraphics[scale=0.82]{quizz.pdf}} \caption{Experiment 1} \end{figure} \newpage \section{Sample paper}\label{sec:Sample} \begin{figure}[htp] \centering{ \includegraphics[scale=0.75]{sampaper.pdf}} \caption{Experiment 2} \end{figure} 

Now each page will appear with 1 pdf image per page and you'll have a correct page number at the bottom. As shown in my example, you'll have to play a bit with the scale factor for each image to get it in the right size that will fit on a single page. Hope that helps...

1 Comment

The question was about inserting whole pages, as is, and not about how to include the contents of a pdf file in an existing page that is otherwise formatted and generated by latex.
12

There is an option without additional packages that works under pdflatex

Adapt this code

\begin{figure}[h] \centering \includegraphics[width=\ScaleIfNeeded]{figuras/diagrama-spearman.pdf} \caption{Schematical view of Spearman's theory.} \end{figure} 

"diagrama-spearman.pdf" is a plot generated with TikZ and this is the code (it is another .tex file different from the .tex file where I want to insert a pdf)

\documentclass[border=3mm]{standalone} \usepackage[applemac]{inputenc} \usepackage[protrusion=true,expansion=true]{microtype} \usepackage[bb=lucida,bbscaled=1,cal=boondoxo]{mathalfa} \usepackage[stdmathitalics=true,math-style=iso,lucidasmallscale=true,romanfamily=bright]{lucimatx} \usepackage{tikz} \usetikzlibrary{intersections} \newcommand{\at}{\makeatletter @\makeatother} \begin{document} \begin{tikzpicture} \tikzset{venn circle/.style={draw,circle,minimum width=5cm,fill=#1,opacity=1}} \node [venn circle = none, name path=A] (A) at (45:2cm) { }; \node [venn circle = none, name path=B] (B) at (135:2cm) { }; \node [venn circle = none, name path=C] (C) at (225:2cm) { }; \node [venn circle = none, name path=D] (D) at (315:2cm) { }; \node[above right] at (barycentric cs:A=1) {logical}; \node[above left] at (barycentric cs:B=1) {mechanical}; \node[below left] at (barycentric cs:C=1) {spatial}; \node[below right] at (barycentric cs:D=1) {arithmetical}; \node at (0,0) {G}; \end{tikzpicture} \end{document} 

This is the diagram I included

enter image description here

2 Comments

It is worth mentioning that the page parameter also works for an argument using graphicsx \includegraphics[page=2,width=0.5\textwidth,height = 0.3\textheight]{file.pdf}
I think the qn is asking for the inclusion of multiple pages.
0

Write the command in the preamble of the Latex document before \begin{document}.

\usepackage{pdfpages} 

Add the following command to include the myfile.pdf:

\includepdf[pages={6-7}, scale=0.9, angle=-90, offset=0 0]{myfile.pdf} 

Here, the angle option is used to rotate the PDF pages and offset x and y coordinates are used to create margins.

1 Comment

Thank you for your interest in contributing to the Stack Overflow community. This question already has quite a few answers—including one that has been extensively validated by the community. Are you certain your approach hasn’t been given previously? If so, it would be useful to explain how your approach is different, under what circumstances your approach might be preferred, and/or why you think the previous answers aren’t sufficient. Can you kindly edit your answer to offer an explanation?

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.