2009-04-28 10 views
16

Je termine actuellement ma thèse, et j'aimerais pouvoir inclure certains documents dans mon document LaTeX.Y compris les documents complets de LaTeX dans d'autres

Les fichiers que je voudrais inclure sont des rapports hebdomadaires faits en LaTeX à mon superviseur. De toute évidence, tous les documents sont numérotés séparément. Je voudrais qu'ils soient inclus dans le document final.

Je pourrais concaténer tous les PDF finaux en utilisant GhostScript ou un autre outil, mais j'aimerais avoir une numérotation cohérente tout au long du document.

J'ai essayé, y compris le LATEX de chaque document dans le document principal, mais le préambule etc cause des problèmes et le petit titre que j'ai dans chaque rapport prend une page entière ...

En résumé, je suis la recherche d'un moyen d'inclure un certain nombre de fichiers LaTeX auto-complets de 1 ou 2 pages dans un grand rapport, en conservant leurs mises en page d'origine, mais en changeant la numérotation des pages.

Répondre

4

Le maintien de la mise en forme d'origine par document sera difficile si les formats utilisés sont différents. Par exemple, la concaténation de différentes classes de documents sera presque impossible.

Je vous suggère d'aller avec la solution GhostScript avec une légère torsion. Latex vous permet de définir le numéro de la page de démarrage en utilisant \ setcounter {page} {13} par exemple. Si vous pouvez trouver une application qui peut compter les pages d'un document PDF (pdfinfo dans le pdfjam paquet Ubuntu est un exemple), vous pouvez effectuer les opérations suivantes:

  • compiler le document suivant au format PDF
  • Concatenate le dernier PDF avec le plein courant PDF
  • Trouver le nombre de pages du plein PDF
  • Utilisez sed pour plumer dans une commande \ setcounter {page} {N} dans le fichier suivant latex
  • Retour au début

Si vous devez effectuer un autre traitement, utilisez à nouveau sed. Vous devriez (en supposant que vous fixiez la boucle infinie dans l'algorithme ci-dessus ;-)) vous retrouver avec un document PDF final avec tous les PDF originaux concaténés et des numéros de ligne continus.

+0

La meilleure solution que je l'ai trouvé à ce jour, je vais lui donner un coup, ty –

9

Pour une solution possible de \input -en utilisant les fichiers LaTeX d'origine tout en ignorant leur préambule, le package newclude peut vous aider.

Sinon, vous pouvez utiliser pdfpages pour insérer des fichiers PDF préexistants dans votre mémoire. Je crois me rappeler qu'il a la particularité de «supprimer» les numéros de page originaux en les recouvrant de cases blanches.

4

Jetez un coup d'oeil le paquet combine, qui semble être exactement ce que vous cherchez. Puisqu'il fusionne des documents au niveau de la source, je suppose que les numéros de page seront corrects.

7

La suggestion de @Will Robertson fonctionne très bien.Je voudrais simplement ajouter un exemple pour tous les paresseux:

\usepackage{pdfpages} 

... 

% Insert _all_ pages from some_pdf.pdf: 
\includepdf[pages=-]{some_pdf} % the .pdf extension may be omitted 

D'après la documentation du package:

  • Pour inclure une gamme spécifique de pages, vous pouvez faire pages={4-9}. Si start est omis, il est par défaut à la première page, si fin est omis, il est par défaut à la dernière page.
  • Pour inclure en mode paysage, font landscape=true
Questions connexes