Comment composer une brochure ?
* Pour redéfinir un format de page, (par exemple un A4 plié en
trois), il faut utiliser la commande \setlength. Il suffit de
savoir quelles sont les longueurs à préciser, le meilleur moyen
pour ce faire est de les visualiser avec la commande \layout
(définie par le package 'layout' disponible sur
ftp://ftp.inria.fr/pub/TeX/CTAN/macros/latex/required/tools/).
%%%% debut macro %%%%
% (Th. Bouche)
\ProvidesPackage{a6size}
% rien a voir avec la taille : ajustement du \baselineskip
\renewcommand\normalsize{%
\ at setfontsize\normalsize\@xiipt{13.5}%
\abovedisplayskip 12\p@ \@plus3\p@ \@minus7\p@
\abovedisplayshortskip \z@ \@plus3\p@
\belowdisplayshortskip 6.5\p@ \ at plus3.5\p@ \@minus3\p@
\belowdisplayskip \abovedisplayskip
\let\@listi\@listI}
\renewcommand\small{%
\ at setfontsize\small\@xipt{12.4}%
\abovedisplayskip 11\p@ \@plus3\p@ \@minus6\p@
\abovedisplayshortskip \z@ \@plus3\p@
\belowdisplayshortskip 6.5\p@ \ at plus3.5\p@ \@minus3\p@
\def\@listi{\leftmargin\leftmargini
\topsep 9\p@ \@plus3\p@ \@minus5\p@
\parsep 4.5\p@ \@plus2\p@ \@minus\p@
\itemsep \parsep}%
\belowdisplayskip \abovedisplayskip}
\normalsize
\setlength\paperheight {148mm}%
\setlength\paperwidth {105mm}%
%\voffset-1cm
%\hoffset-2cm
\setlength{\topmargin}{-1.3cm}%
\setlength{\oddsidemargin}{-.5cm}%
\setlength{\evensidemargin}{-1cm}%
\setlength{\marginparsep}{0\p@}%
\setlength{\headsep}{0\p@}%
% calcule la hauteur du texte en fonction du \baselineskip, pour
% que les lignes soient placées au même niveau sur toutes les pages
\setlength{\textheight}{\topskip}
\addtolength{\textheight}{22\baselineskip}%
\setlength{\textwidth}{7cm}%
\setlength{\footskip}{23\p@}% (originellement : 48)
%\setlength{\baselineskip}{13\p@}%
%\setlength{\marginparwidth}{0\p@} %
%\addtolength{\baselineskip}{.2\baselineskip}%
\setlength{\parindent}{0\p@}
%\addtolength{\headsep}{\headsep}
%\setlength{\push at skip}{.2\textwidth}
\newenvironment{page}{\vspace*{\stretch{1}}}
{\vspace*{\stretch{2.5}}\newpage}
\pagestyle{plain}
%%%% fin macro %%%%
Il faut ensuite opérer ce que les imprimeurs appellent une
imposition : imprimer la page tant à tel endroit de la x-ième
feuille de telle sorte qu'il n'y ait plus qu'à plier la liasse
pour obtenir un livre prêt à être relié. Cette étape est facile
à réaliser soit à l'aide de dvidvi (mais qui n'autorise pas les
rotations, ce qui peut en limiter l'intérêt pour des formats
spéciaux) soit avec pstops :
pstops "2:0L at .7(21cm,0)+1L@.7(21cm,14.85cm)" un.ps deux.ps
disponible sur ftp://ftp.inria.fr/pub/TeX/CTAN/support/psutils/.
* L'option a5paper de LaTeX2e permet également de faire cela.
Il faut ensuite utiliser dvidvi et dvips en -t landscape. dvips
est disponible entre autres par ftp sur
ftp://ftp.gutenberg.eu.org/pub/gut/sources/.
* Le package 'a5booklet' est disponible sur
ftp://ftp.inria.fr/pub/TeX/CTAN/dviware/a5booklet/.
* Consulter également le package '2up' pour LaTeX2e.
* Le package 'poligraf' disponible sur
ftp://ftp.inria.fr/pub/TeX/CTAN/macros/TeX-PS/cmyk-hax/ permet d'agir sur la mise en page
d'un document avant impression.
* psnup et psbook peuvent également permettre de faire de la
composition mais il vaut alors mieux travailler avec des polices
postscript. Ces utilitaires sont accessibles via :
http://www.dcs.ed.ac.uk/home/ajcd/psutils/.
Exemple (J.A. Ferrez) :
=================SNIP
#!/bin/sh
#
# Turn a (clean) PS file into a booklet
#
# input on stdin or file in arg
#
# psbook -- reorder the pages
# see -s option for _very_ large files
# psnup -- scale and place two pages onto one
# pstops -- reverse the odd pages for duplex printing
#
# outup on stdout
#
psbook $1 | psnup -2 | pstops "2:0,1U(21cm,29.7cm)"
=================SNIP
%%%% fin exemple %%%%
* Le résultat est possible également en ne travaillant que sur
le postscript : dvips -h twoup -t landscape fichier.dvi.
* Sur PC on peut utiliser dvidrv.
* Pour PC twoup fait cela, mais ce n'est pas du domaine public.