On rencontre parfois des livres qui, afin d'éviter d'alourdir celles-ci, déportent la légende d'une planche pleine-page au bas de la page qui la précède. Visuellement cela ressemblerait d'assez loin au format d'une note de bas de page… par exemple : Ouvrir dans l'éditeur Overleaf
Page 27 Eaque illo maxime architecto quam inventore voluptates qui. Necessitatibus eaque eos commodi. Earum repellendus officiis optio in. ... Libero est quidem quod voluptas nisi. Et vero veritatis doloremque quia pariatur et iusto voluptatem. Quibusdam maiores corporis eos incidunt aliquam eum. Ipsum nobis dolorem at autem omnis. Voluptate est sed at aut. Sunt quia omnis et reprehenderit labore. Quibusdam quia aut in saepe eum. Sed incidunt tempora exercitationem et incidunt id quae fugit. Voluptatem qui voluptas harum ab id non porro rerum. Ullam saepe explicabo consequuntur est amet quisquam. Ut neque voluptatem velit impedit debitis rem ratione. Exercitationem mollitia minima officia quia consequuntur est. Nisi ad repellendus recusandae iste alias nihil. Nihil magnam beatae in neque qui. Reprehenderit ut rerum deserunt quod non et. Quo quae dicta modi voluptatem esse et. ────────────────────────────── PLANCHE TROISIÈME Menu du dîner servi à Kœnigsberg le jour du couronnement de Leurs Majestés le Roi et la Reine de Prusse. \\newpage Page 28 <image représentant le menu> \\newpage Page 29 Suite du texte... Bien entendu, un nombre variable de lignes vides peuvent séparer le dernier paragraphe de la page -1 de la légende qui s'imprime au bas de cette page. Ce pourra par exemple être le cas quand on a affaire à une légende placée à la fin d'un chapitre. Par ailleurs le texte de la légende peut être d'une longueur arbitraire (mais raisonnable) et ne doit en aucun cas déborder sur la page suivante. Comment peut-on procéder afin de réaliser ce type de mise en page quand on utilise LaTeX ? Modification 21/12/2020: Conformément aux recommandations de @touhami ci-dessous je code: Ouvrir dans l'éditeur Overleaf
\vfill \medskip \noindent\rule{\textwidth}{.3pt} \medskip \begin{center} \textsc{planche sixième. — relevés de poisson.} \end{center} \newpage \includepdf{images/planches/pl006.pdf} Mais ceci ne donne pas le résultat espéré. La ligne créée grâce \rule{\textwidth} se trouve bien en bas de la page en cours mais le libellé (légende) de la planche se trouve en haut de la page suivante. Par ailleurs \vfill ne semble fonctionner que dans la mesure où il y a déja quelque chose sur la page : pour remplir/compléter (fill en anglais) une page, encore faut-il qu'il y ait quelque chose à compléter ? Autre problème. Cette approche ne semble pas être compatible avec la présence de notes de bas de page. Posée 21 Déc '20, 00:38 Chris Jones XL Bernard
Affichage de 5 parmi 7
Afficher 2 commentaire(s) en plus
|
Voici une solution. Ouvrir dans l'éditeur Overleaf
\documentclass[french]{book} \usepackage{lmodern} \usepackage[T1]{fontenc} \usepackage{babel} \usepackage{mwe} \usepackage{pdfpages} \usepackage{etoolbox} \makeatletter \patchcmd{\@makecol}{\setbox\@outputbox \box\@cclv}{% \ifx\legnd\empty \setbox\@outputbox \box\@cclv \else \setbox\@outputbox \vbox {% \boxmaxdepth \@maxdepth \unvbox \@cclv \legnd \global\let\legnd\empty}% \fi}{}{} \makeatother \newcommand{\legnd}{} \newcommand{\legende}[1]{% \renewcommand{\legnd}{% \null\vfill \noindent\rule{\textwidth}{.3pt} \medskip\nopagebreak {\centering \textsc{#1}\par}} \newpage \legnd \renewcommand{\legnd}{}} \begin{document} \section{Foo} \lipsum[1-3] \legende{planche sixième. — relevés de poisson.} \includepdf[pages={1}]{example-image-a4} \lipsum[1-2] Foo\footnote{Bla bla} \legende{planche sixième. — relevés de poisson.} \includepdf[pages={1}]{example-image-a4} \end{document} Publiée 25 Déc '20, 14:56 touhami Cette solution semble fonctionner à merveille… y compris quand j'ajoute des notes de bas de page longuettes et nombreuses qui débordent sur la (ou les) page(s) suivante(s). Le résultat en sortie est en plus esthétiquement agréable à l'œil. Il ne me reste plus qu'à remplacer les commandes \includepdf par des \insererunepage afin d'imprimer d'une table des planches en fin de volume.
(25 Déc '20, 22:28)
Chris Jones XL
1
J'ai un peu bricolé la macro \legend afin de pouvoir ajouter quelques lignes de texte après le PLANCHE PREMIÈRE etc., lignes qui doivent apparaître sur la même page… et combiné à la macro \insereruneplanche j'obtiens exactement ce que je souhaitais.
(31 Déc '20, 01:06)
Chris Jones XL
|
Il suffit de taper
\vfill Lalégende
.Notons qu'il est possible d'ajouter la légende à la même page via l'option
pagecommand={...}
de la commande\includepdf
. Vous pouvez, par exemple, taper :\includepdf[pagecommand={\null\vfill Lalégende}]{fichierpdf}
.@touhami voir modification de la question posée
Vous pouvez essayer
\vfill \noindent\rule{\textwidth}{.3pt} \medskip\nopagebreak {\centering \textsc{planche sixième. — relevés de poisson.} \par} \includepdf{images/planches/pl006.pdf}
Pour régler le problème d'une page blanche il faut ajouter
\null
avant\vfill
(\null=\mbox{}
).Concernant les notes de bas de page, vous n'avez rien indiqué. Comment voulez vous les composer ? avant la légende, après, avec séparation...
@touhami \null semble en effet préférable à mon premier réflexe — ajouter un 0xa0 (espace non-sécable sur mon clavier.) Pour ce qui est des notes de bas de page… vu que la légende de planche occupe le même emplacement, la réponse est simple : dans le cas où une page en comporte une (ou plusieurs), il faut à mon avis forcer le passage à la page suivante et générer la légende sur une page blanche… en évitant bien sûr que la — ou les note(s) ne débordent pas sur une deuxième page. Mais je n'ai pas la moindre idée de comment procéder.
OK. mais cela peut être compliqué.
On doit pouvoir placer un texte au bas d'une page assez faciment à l'aide de la commande
\AddToShipoutPictureBG*
de eso-pic, en faisant un changement de page manuel.