Latex permet-il la surimpression d'une page sur une autre?

Voici par exemple le source de la première page:

http://s000.tinyupload.com/index.php?file_id=00816819785230099834

Voici le source de la seconde:

http://s000.tinyupload.com/index.php?file_id=84370459482852541126

Afin de créer un pdf qui superpose les deux pages j'utilise la séquence suivante :

Ouvrir dans l'éditeur Overleaf
xelatex -output-directory=. bata.tex; xelatex -output-directory=. batb.tex; pdftk bata.pdf background batb.pdf output batc.pdf; evince batc.pdf

… ce qui donne le résultat escompté.

Je cherche comment éviter d'avoir recours à l'utilitaire pdftk.

Est-il possible de demander directement à latex/xelatex d'effectuer cette surimpression ?

Précisions :

Il me semble que l'extension eso-pic permet à l'utilisateur de combiner le contenu d'un fichier source latex à un fichier pdf pré-existant. Cela peut par exemple s'avérer utile dans le cas où vous disposez d'un schéma ou autre image et que vous souhaitez y ajouter des légendes, ce que l'on appelle « captions » dans la langue de Shakespeare.

Même si la solution que vous proposez est un net progrès par rapport à l'utilisation de pdftk tout en aboutissant au même résultat… ce que je j'avais en tête est différent :

Disons que je dispose par d'un fichier source latex (unique) avec par exemple :

Ouvrir dans l'éditeur Overleaf
. . . (page n-1)

\newpage

(page n)

contenu de la page n

(page n+1)

contenu de la page n+1

(page n+2) . . . etc.

Ce que je souhaiterais faire consisterait à donner à latex/xelatex l'ordre d'imprimer la page n+1 en surimpression de la page n. L'équivalent d'un saut de page inverse (ou arrière…) en quelque sorte… un peu le contraire d'une instruction \newpage.

La raison pour laquelle je cherche à procéder ainsi est que cette façon de faire s'intégrerait plus facilement à l'automatisation de ma chaîne de travail (« toolchain » ?) sans requérir la moindre intervention manuelle (en l'occurrence la compilation séparée d'un document d'une page constituant lautrefichier de votre exemple).

J'espère que cette explication est un peu plus claire ?

ECM :

Ouvrir dans l'éditeur Overleaf
\documentclass[oneside,10pt,spanish,]{extbook}
\usepackage{fontspec}
\setmainfont[Numbers={OldStyle,Proportional}]{EBGaramond-Regular}
\usepackage[papersize={4.8in,6.4in},left=.5in,right=.5in]{geometry}
\begin{document}
\thispagestyle{empty}
\begin{tabular}{p{.8\textwidth}}
  \ \ \ \ Bonjour \ \ \ \ \ \ \
\end{tabular}
\end{document}

\documentclass[oneside,10pt,spanish,]{extbook}
\usepackage{fontspec}
\setmainfont[Numbers={OldStyle,Proportional}]{EBGaramond-Regular}
\usepackage[papersize={4.8in,6.4in},left=.5in,right=.5in]{geometry}
\begin{document}
\thispagestyle{empty}
\begin{tabular}{p{.8\textwidth}}
  \ \ \ \ \hspace{12mm} les dégâts \ \ \ \ \ \ \
\end{tabular}
\end{document}

Posée 18 Mai '20, 22:22

Chris%20Jones%20XL's gravatar image

Chris Jones XL
19111118
Taux d'acceptation : 6%

Modifiée 06 Jui '20, 15:51

denis's gravatar image

denis ♦♦
7.3k1510

1

Merci d'essayer de fournir un ECM dans votre question. Par ailleurs, voici le message que j'obtiens sur mon navigateur quand je clique sur vos liens : « Ce site peut contenir des programmes dangereux. Firefox a bloqué cette page, car elle pourrait vous faire installer des programmes capables de nuire à votre navigation à votre insu (par exemple en modifiant votre page d’accueil ou en ajoutant des publicités sur les sites que vous visitez). Avis émis par Google Safe Browsing. »

(05 Jui '20, 23:38) denis ♦♦ denis's gravatar image

Les formules de politesse et les signatures sont à éviter : celle(s) de votre contribution a (ont) été supprimée(s).

(05 Jui '20, 23:39) denis ♦♦ denis's gravatar image

Attention ! Les contre-obliques (\) saisies telles quelles dans les contributions ne sont visibles que si elles sont insérées en tant que ⟨code⟩. Pour insérer du ⟨code⟩, notamment des commandes LaTeX, cf. la FAQ Comment mettre en forme ma contribution ?. Merci de corriger votre contribution si cela n'a pas déjà été fait.

(06 Jui '20, 15:54) denis ♦♦ denis's gravatar image

Le document visé est-il de nature article ou rapport, ou bien de type diaporama ?

(06 Jui '20, 15:57) denis ♦♦ denis's gravatar image
1

Je ne comprends pas bien : est-il nécessaire que les pages produites viennent de fichiers sources .tex distincts ?

(10 Jui '20, 15:02) denis ♦♦ denis's gravatar image

@denis Non, c'est justement ce que l'P.O. essaye d'éviter.

(10 Jui '20, 15:51) touhami touhami's gravatar image

@touhami Mais, dans ce cas, pourquoi un fichier par page dans les réponses ?

(10 Jui '20, 20:01) denis ♦♦ denis's gravatar image
Affichage de 5 parmi 7 Afficher 2 commentaire(s) en plus

@touhami

Votre exemple donne le resultat escompté.

J'ai cherché à l'adapter à mon problème mais dans la mesure où chacune de les deux pages que j'essaie de superposer comporte plusieurs objets, je n'y suis point parvenu.

Rappel de mon code initial :

Page 1:

Ouvrir dans l'éditeur Overleaf
\documentclass[oneside,10pt,spanish,]{extbook} 
\usepackage{fontspec}
\setmainfont[Numbers={OldStyle,Proportional}]{EBGaramond-Regular} 
\usepackage[papersize={4.8 in, 6.4 in},left=.5 in,right=.5 in]{geometry}
\usepackage{ragged2e}
\usepackage{rotating}
\begin{document}
\thispagestyle{empty}  
\footnotesize
$\left.
  \begin{tabular}{p{.8\textwidth}}
    \hspace{60.0mm} Neptuno. E              \dotfill       \\
    \hspace{59.0mm} Scipion. F              \dotfill       \\
    \hspace{58.0mm} Rayo. E                 \dotfill       \\
    \hspace{57.0mm} Formidable. F           \dotfill       \\
    \hspace{56.0mm} ⸺Duguay. F              \dotfill       \\
    \hspace{55.0mm} Mont-Blanc. F          \dotfill        \\
    \hspace{54.0mm} Asís. E                \dotfill        \\
  \end{tabular} \right\} $ \rotatebox[origin=c]{90}{\textsc{vanguardia.}}
\vskip 1mm

$\left.
  \begin{tabular}{p{.8\textwidth}}
    \hspace{53.0mm} Agustín. E              \dotfill       \\
    \hspace{52.0mm} Herós. F                \dotfill       \\                 
    \hspace{51.0mm} Trinidad. E             \dotfill       \\                 
    \hspace{50.0mm} Bucentauro. F           \dotfill       \\                 
    \hspace{49.0mm} ⸺Neptune. F              \dotfill      \\                 
    \hspace{48.0mm} Redoutable. F           \dotfill       \\                 
    \hspace{47.0mm} Intrépide. F            \dotfill       \\                 
    \hspace{46.0mm} ⸺Leandro. E              \dotfill      \\                 
  \end{tabular} \right\} $ \rotatebox[origin=c]{90}{\textsc{centro.}}
\vskip 1mm

$\left.
  \begin{tabular}{p{.8\textwidth}}
    \hspace{45.0mm} ⸺Justo. E                \dotfill      \\ 
    \hspace{44.0mm} ⸺Indomptable. F          \dotfill      \\                   
    \hspace{43.0mm} Santa Ana. E            \dotfill       \\                   
    \hspace{42.0mm} Fougueux. F             \dotfill       \\                   
    \hspace{41.0mm} Monarca. E              \dotfill       \\                   
    \hspace{40.0mm} Plutón. F               \dotfill       \\                   
  \end{tabular} \right\} $ \rotatebox[origin=c]{90}{\textsc{retaguardia.}}
\vskip 1mm

$\left.
  \begin{tabular}{p{.8\textwidth}}
    \hspace{39.0mm} Bahama. E               \dotfill       \\                
    \hspace{38.0mm} ⸺Aigle. F               \dotfill       \\                
    \hspace{37.0mm} Montañés. E             \dotfill       \\                
    \hspace{36.0mm} Algeciras. E            \dotfill       \\                
    \hspace{35.0mm} Argonauta. E            \dotfill       \\                
    \hspace{34.0mm} Swift-Sure. F           \dotfill       \\                
    \hspace{33.0mm} ⸺Argonaute. F           \dotfill       \\                
    \hspace{32.0mm} Ildefonso. E            \dotfill       \\                
    \hspace{31.0mm} ⸺Achille. F             \dotfill       \\                
    \hspace{30.0mm} Príncipe de Asturias E  \dotfill       \\         
    \hspace{29.0mm} Berwich. F              \dotfill       \\         
    \hspace{28.0mm} Nepomuceno. E           \dotfill       \\         
  \end{tabular} \right\} $ \rotatebox[origin=c]{90}{\textsc{reserva.}}
\vskip 1mm

\normalsize
\end{document}

Page 2:

Ouvrir dans l'éditeur Overleaf
\documentclass[oneside,10pt,spanish,]{extbook} 
\usepackage{fontspec}
\setmainfont[Numbers={OldStyle,Proportional}]{EBGaramond-Regular} 
\usepackage[papersize={4.8 in, 6.4 in},left=.5 in,right=.5 in]{geometry}
\usepackage{ragged2e}
\usepackage{rotating}

\begin{document}
\thispagestyle{empty}  
\footnotesize
  \begin{tabular}{p{.8\textwidth}}
                                                                                \\
                                                                                \\
                                                                                \\
                                                                                \\
                                                                                \\
                                                                                \\
                                                                                \\
  \end{tabular} 
  \vskip 1mm

  \begin{tabular}{p{.8\textwidth}}
               PRIMER CUERPO                                                    \\
      \textsc{     mandado por Nelson.}                                         \\
                                                                                \\
      \textit{                                                       Victory.}  \\
      \parbox{4.5cm}{\rightarrowfill}                                           \\
                                                                                \\
                                                                                \\
                                                                                \\
  \end{tabular} 
  \vskip 1mm

  \begin{tabular}{p{.8\textwidth}}
            SEGUNDO CUERPO                                                      \\
    \textsc{mandado por Collingwood.}                                           \\
                                                                                \\
    \textit{                               Royal Sovereign.}                    \\
    \parbox{3.9cm}{\rightarrowfill}                                             \\
                                                                                \\
  \end{tabular} 
  \vskip 1mm

  \begin{tabular}{p{.8\textwidth}}
                                                                                \\
                                                                                \\
                                                                                \\
                                                                                \\
                                                                                \\
                                                                                \\
                                                                                \\
                                                                                \\
                                                                                \\
                                                                                \\
                                                                                \\
                                                                                \\
  \end{tabular} 
  \vskip 1mm

\normalsize
\end{document}

J'ai essayé d'intégrer l'ensemble des 4 tables qui constituent le premier document à un makepage unique en suivant votre exemple mais latex a refusé de compiler (messsage running argument etc. — il semble se plaindre d'une manque d'une accolate fermante, ce qui suggère qu'il n'est pas possible d'inclure plus d'une table dans une boîte), en gros quelque chose comme ceci:

Ouvrir dans l'éditeur Overleaf
\noindent\makebox[0pt][l]{
$\left.
  \begin{tabular}{p{.8\textwidth}}
    \hspace{60.0mm} Neptuno. E              \dotfill       \\

    (. . .)

    \hspace{29.0mm} Berwich. F              \dotfill       \\         
    \hspace{28.0mm} Nepomuceno. E           \dotfill       \\         
  \end{tabular} \right\} $ \rotatebox[origin=c]{90}{\textsc{reserva.}}
}

Par contre je n'ai pas ce problème si je définis une makebox pour chaque table mais dans ce cas les différentes tables ne sont pas superposées.

J'ai ensuite tenté d'intercaler les tables des deux pages de mon document initial (à savoir : \makebox{ ... table 1 de la page 1} ... suivi de \makebox{ ... table 1 de la page 2) ... etc.) mais alors, toutes les tables s'impriment en séquence l'une après l'autre au lieu d'être surimprimées.

Pourriez-vous expliquer un peu plus en détail comment fonctionne votre exemple ? Je ne vois pas notamment à quoi correspondent les barres obliques inverses (\ \ \ Bonjour \ \ \ \) dans vos deux tables.

Une lecture attentive de diverses descriptions de la commande \makebox que j'ai trouvé en ligne ne m'a pas permis d'y voir plus clair.

Lien permanent

Publiée 10 Jui '20, 00:37

Chris%20Jones%20XL's gravatar image

Chris Jones XL
19111118
Taux d'acceptation : 6%

Modifiée 10 Jui '20, 00:57

Pathe's gravatar image

Pathe ♦♦
7.5k42203251

OK. mais chez moi le code pour la première page produit deux pages !

(10 Jui '20, 15:58) touhami touhami's gravatar image

@touhami le code correspondant à la « page.1 » ci-dessus avec la même geometry (4.8x6.4 in.)f ? J'ai du mal à suivre. Le problème est de faire en sorte que les 4 tables de la page 1 soient imprimées superposées aux 4 tables de la page 2. Après c'est juste une question d'ajuster la taille des caractère ou les dimensions de la page afin de s'assurer que l'ensemble s'imprime sur un seule page.

(10 Jui '20, 23:21) Chris Jones XL Chris%20Jones%20XL's gravatar image

Oui, en fais peut être c'est à cause de la police, car je n'est pas EBGaramond-Regular et j'ai utiliser pdflatex.

J'ai modifie la réponse en postant un nouveau code qui devrait fonctionner.

(11 Jui '20, 00:34) touhami touhami's gravatar image

Impeccable! Par contre cela me donne deux pages en séquence quand je l'intègre tel quel à mon document (profitant du fait que pandoc permet d'insérer des blocs de codes de latex pur dits raw latex) dans le source markdown :~= la surimpression ne fonctionne plus.

(11 Jui '20, 23:59) Chris Jones XL Chris%20Jones%20XL's gravatar image

Questions:

  1. quel est le rôle des instructions {parbox{textwidth} que vous avez insérées après la commande makebox ?

  2. quel est le rôle des % en fin de ligne qui (autant que je sache) servent à supprimer tout ce qui suit (espaces et/ou retour de chariot) ?

Pas eu le temps de creuser la 2e solution que vous préconisez… à savoir (si j'ai bien compris…), placer en séquence dans le fichier source la description de la table 2.2 immédiatement après la table 1.2 (et faire de même pour les tables 1.4 et 2.4)… Cela aurait en effet le mérite de rendre le source un peu plus lisible.

(12 Jui '20, 00:00) Chris Jones XL Chris%20Jones%20XL's gravatar image

\parbox{LARGEUR}{Bla bla} Créer une boite de largeur LARGEUR du contenu Bla bla. Cette boite est comme une petite page donc contient plusieurs objets et plusieurs lignes mais elle est considérée par (La)TeX comme unité, elle est traitée comme une lettre A.

% pour supprimer les espaces donc pour assurer la surimpression.

(12 Jui '20, 11:04) touhami touhami's gravatar image

La surimpession ne fonctionnait pas une fois intégrée au source de mon document parce que pour améliorer la lisibilité (sans doute) j'avais malencontreusment ajouté une ligne vide entre le premier makebox et le second: end{tabular} right} $ rotatebox[origin=c]{90}{textsc{reserva.}}}}%    (... NULL ...) makebox[0pt][l]{parbox{textwidth}{%

... ce qui a bien entendu l'effet d'annuler (en quelque sorte) l'effet du % qui termine la première ligne ci-dessus (... {reserva.}}}}%)

J'ai supprimé cette ligne vide dans mon source et à présent la surimpression fonctionne comme requis.

(12 Jui '20, 21:48) Chris Jones XL Chris%20Jones%20XL's gravatar image

Serait-il possible de demander à latex de faire en sorte que le plan de la bataille navale occupe exactement une page quelle que soit la taille de police principale utilisée pour le document (8, 9, 10, 11, 12, 14pt) ? En d'autres termes obtenir de latex qu'il augmente ou réduise la taille de la police utilisée (en respectant les marges) de manière que cette page s'intègre harmonieusement au reste du document. Un peu ce que j'obtiens avec un document html ou epub en utilisant une image de type svg?

(12 Jui '20, 23:12) Chris Jones XL Chris%20Jones%20XL's gravatar image

Je pense que la réponse est oui, mais il faut poser une nouvelle question.

(13 Jui '20, 00:02) touhami touhami's gravatar image

@touhami Comme recommandé ci-dessus je viens de « poser une nouvelle question » relative à l'adaptation (reéduction/expansion) d'une page logique à la « geometry » de la page physique.

(15 Aoû '20, 21:00) Chris Jones XL Chris%20Jones%20XL's gravatar image
Affichage de 5 parmi 10 Afficher 5 commentaire(s) en plus

Vous pouvez le faire avec l'extension eso-pic. Il suffit d'ajouter à l'un des deux fichiers,

\usepackage{eso-pic} \AddToShipoutPictureBG{% \AtPageLowerLeft{\includegraphics{lautrefichier}}}

Edit. Si j'ai bien compris, dans ce cas, il s'agit de superposer deux objets et non pas deux pages. Il suffit donc d'utiliser \makebox.

ECM

Ouvrir dans l'éditeur Overleaf
\documentclass[oneside,10pt]{extbook}
\usepackage[papersize={4.8in,6.4in},left=.5in,right=.5in]{geometry}
\begin{document}
Bla bla ...
\newpage 
%(page n)
\thispagestyle{empty}
\noindent\makebox[0pt][l]{\begin{tabular}{p{.8\textwidth}}
  \ \ \ \ Bonjour \ \ \ \ \ \ \
\end{tabular}}% %<---- % pour supprimer l'espace 
%\newpage 
%(page n+1)
%\thispagestyle{empty}
\makebox[0pt][l]{\begin{tabular}{p{.8\textwidth}}
  \ \ \ \ \hspace{12mm} les dégâts \ \ \ \ \ \ \
\end{tabular}}
\newpage
%(page n+2)
bla bla ...
\end{document}

Edit2 Voici une solution. une autre solution est de superposer seulement les tableaux: la deuxième avec la deuxième et la troisième avec la troisième.

Ouvrir dans l'éditeur Overleaf
\documentclass[oneside]{extbook}

\usepackage{ragged2e}
\usepackage{rotating}
\begin{document}
Bla bla ..

\newpage
\thispagestyle{empty}  
\footnotesize
\makebox[0pt][l]{\parbox{\textwidth}{%
$\left.
  \begin{tabular}{p{.8\textwidth}}
    \hspace{60.0mm} Neptuno. E              \dotfill       \\
    \hspace{59.0mm} Scipion. F              \dotfill       \\
    \hspace{58.0mm} Rayo. E                 \dotfill       \\
    \hspace{57.0mm} Formidable. F           \dotfill       \\
    \hspace{56.0mm} ---Duguay. F              \dotfill       \\
    \hspace{55.0mm} Mont-Blanc. F          \dotfill        \\
    \hspace{54.0mm} Asís. E                \dotfill        \\
  \end{tabular} \right\} $ \rotatebox[origin=c]{90}{\textsc{vanguardia.}}
\vskip 1mm

$\left.
  \begin{tabular}{p{.8\textwidth}}
    \hspace{53.0mm} Agustín. E              \dotfill       \\
    \hspace{52.0mm} Herós. F                \dotfill       \\                 
    \hspace{51.0mm} Trinidad. E             \dotfill       \\                 
    \hspace{50.0mm} Bucentauro. F           \dotfill       \\                 
    \hspace{49.0mm} ---Neptune. F              \dotfill      \\                 
    \hspace{48.0mm} Redoutable. F           \dotfill       \\                 
    \hspace{47.0mm} Intrépide. F            \dotfill       \\                 
    \hspace{46.0mm} ---Leandro. E              \dotfill      \\                 
  \end{tabular} \right\} $ \rotatebox[origin=c]{90}{\textsc{centro.}}
\vskip 1mm

$\left.
  \begin{tabular}{p{.8\textwidth}}
    \hspace{45.0mm} ---Justo. E                \dotfill      \\ 
    \hspace{44.0mm} ---Indomptable. F          \dotfill      \\                   
    \hspace{43.0mm} Santa Ana. E            \dotfill       \\                   
    \hspace{42.0mm} Fougueux. F             \dotfill       \\                   
    \hspace{41.0mm} Monarca. E              \dotfill       \\                   
    \hspace{40.0mm} Plutón. F               \dotfill       \\                   
  \end{tabular} \right\} $ \rotatebox[origin=c]{90}{\textsc{retaguardia.}}
\vskip 1mm

$\left.
  \begin{tabular}{p{.8\textwidth}}
    \hspace{39.0mm} Bahama. E               \dotfill       \\                
    \hspace{38.0mm} ---Aigle. F               \dotfill       \\                
    \hspace{37.0mm} Montañés. E             \dotfill       \\                
    \hspace{36.0mm} Algeciras. E            \dotfill       \\                
    \hspace{35.0mm} Argonauta. E            \dotfill       \\                
    \hspace{34.0mm} Swift-Sure. F           \dotfill       \\                
    \hspace{33.0mm} ---Argonaute. F           \dotfill       \\                
    \hspace{32.0mm} Ildefonso. E            \dotfill       \\                
    \hspace{31.0mm} ---Achille. F             \dotfill       \\                
    \hspace{30.0mm} Príncipe de Asturias E  \dotfill       \\         
    \hspace{29.0mm} Berwich. F              \dotfill       \\         
    \hspace{28.0mm} Nepomuceno. E           \dotfill       \\         
  \end{tabular} \right\} $ \rotatebox[origin=c]{90}{\textsc{reserva.}}}}%
%\vskip 1mm
%\newpage
%\thispagestyle{empty}  
%\footnotesize
\makebox[0pt][l]{\parbox{\textwidth}{%
  \begin{tabular}{p{.8\textwidth}}
                                                                                \\
                                                                                \\
                                                                                \\
                                                                                \\
                                                                                \\
                                                                                \\
                                                                                \\
  \end{tabular} 
  \vskip 1mm

  \begin{tabular}{p{.8\textwidth}}
               PRIMER CUERPO                                                    \\
      \textsc{     mandado por Nelson.}                                         \\
                                                                                \\
      \textit{                                                       Victory.}  \\
      \parbox{4.5cm}{\rightarrowfill}                                           \\
                                                                                \\
                                                                                \\
                                                                                \\
  \end{tabular} 
  \vskip 1mm

  \begin{tabular}{p{.8\textwidth}}
            SEGUNDO CUERPO                                                      \\
    \textsc{mandado por Collingwood.}                                           \\
                                                                                \\
    \textit{                               Royal Sovereign.}                    \\
    \parbox{3.9cm}{\rightarrowfill}                                             \\
                                                                                \\
  \end{tabular} 
  \vskip 1mm

  \begin{tabular}{p{.8\textwidth}}
                                                                                \\
                                                                                \\
                                                                                \\
                                                                                \\
                                                                                \\
                                                                                \\
                                                                                \\
                                                                                \\
                                                                                \\
                                                                                \\
                                                                                \\
                                                                                \\
  \end{tabular}}}

\normalsize
\newpage
Bla bla
\end{document}
Lien permanent

Publiée 18 Mai '20, 23:27

touhami's gravatar image

touhami
9.7k410
Taux d'acceptation : 51%

Modifiée 10 Jui '20, 19:30

Votre réponse
(dés)activer l'aperçu

Suivre cette question

Par courriel :

Une fois que vous serez enregistré, vous pourrez souscrire à n'importe quelle mise à jour ici

Par flux RSS :

Réponses

Réponses et commentaires

Bases de Markdown

  • *italique* ou _italique_
  • **gras** ou __gras__
  • Lien ::[texte](http://url.com/ "Titre ")
  • Image : ?![alt texte](/path/img.jpg "Titre ")
  • Liste numérotée : 1. Foo 2. Bar
  • Pour ajouter un passage à la ligne, ajoutez deux espaces à l'endroit où vous souhaitez que la ligne commence.
  • Les balises HTML de base sont également prises en charge.