Outils pour utilisateurs

Outils du site


issue186:latex

The use of text in columns is fairly common. You are not likely to use columns when writing an essay for school, or in a resume, or writing a story. Newspapers, magazines (like FCM), journals, business reports, all set type in columns in which the text flows down the page, then up to the next column, then down again, and on and on. As is usual in Latex, there are different ways to accomplish the task, the current task being to set text in columns. For small amounts of text, it is possible to use a table. (Formatting tables was reviewed in Full Circle Magazine #182.) For longer sections of text, or to avoid using tables, there are several tools available to format columns. If you search on CTAN for “multicol”, you will find more than one dozen possible choices. As is true for many features in Tex / Latex, there is little or no information to tell a new user how to include a new feature in their installation and how to use it. I checked information for the following environments: balance, balanced, cuted, doublecol, multicol, threecol, twocolumns, vwcol. Only multicol and vwcol had README files (which are identical, and generic, and do not provide any instructions for installation or use). Cuted, multicol and vwcol had informative documentation files.

L'utilisation de texte en colonnes est assez courante. Il est peu probable que vous utilisiez des colonnes lorsque vous rédigez une dissertation pour l'école, ou dans un CV, ou pour écrire une histoire. Les journaux, les magazines (comme le FCM), les revues, les rapports d'activité, tous sont présentés en colonnes, le texte s'écoulant vers le bas de la page, puis vers la colonne suivante, puis vers le bas, et ainsi de suite. Comme d'habitude dans LaTeX, il existe différentes façons d'accomplir une tâche, la tâche actuelle étant de mettre le texte en colonnes. Pour de petites quantités de texte, il est possible d'utiliser un tableau. (Le formatage des tableaux a été examiné dans le magazine Full Circle n° 182.) Pour les sections de texte plus longues, ou pour éviter d'utiliser des tableaux, il existe plusieurs outils pour formater les colonnes. Si vous cherchez « multicol » sur CTAN, vous trouverez plus d'une douzaine de choix possibles.

Comme c'est le cas pour de nombreuses fonctionnalités de TeX/LaTeX, il y a peu ou pas d'informations pour indiquer à un nouvel utilisateur comment inclure une nouvelle fonctionnalité dans son installation et comment l'utiliser. J'ai vérifié les informations pour les environnements suivants : balance, balanced, cuted, doublecol, multicol, threecol, twocolumns, vwcol. Seuls multicol et vwcol avaient des fichiers README (qui sont identiques, et génériques, et ne fournissent aucune instruction d'installation ou d'utilisation). Cuted, multicol et vwcol avaient des fichiers de documentation informatifs.

Here is an explanation of cuted: Standard LATEX will switch between \onecolumn and \twocolumn only at the top of a page; the commands themselves clear the previous page. This package does away with the restriction, and allows you to mix one- and two-column modes on the same page. The PDF documentation is less than two pages, and explains what the options do and how to turn them on. The documentation for vwcol is 24 pages. It sets out the purpose of the environment clearly at the beginning. Vwcol is designed for paragraphs of text to be in multiple columns of various widths. The columns cannot span multiple pages. The environment is not designed for anything but text. The documentation for multicol is 39 pages, a lot to read if you are only trying to set up the layout of a document that is overdue. The environment multicols allows for single-column and multi-column layouts on the same page. I am going to experiment only with multicol and vwcol in this article. I will use the lipsum package to generate fake text, as usual. I will experiment to find out if tables and images can be included in columns. I will start with vwcol since it was developed first (see code above).

Voici une explication de cuted : Le LATEX standard ne passe du mode \onecolumn au mode \twocolumn qu'en haut d'une page ; les commandes elles-mêmes effacent la page précédente. Ce paquet supprime cette restriction et vous permet de mélanger les modes une et deux colonnes sur une même page. La documentation PDF fait moins de deux pages et explique ce que font les options et comment les activer.

La documentation de vwcol compte 24 pages. Elle expose clairement l'objectif de l'environnement dès le début. Vwcol est conçu pour que les paragraphes de texte soient disposés en plusieurs colonnes de différentes largeurs. Les colonnes ne peuvent pas s'étendre sur plusieurs pages. L'environnement n'est pas conçu pour autre chose que du texte.

La documentation de multicol fait 39 pages, ce qui est beaucoup à lire si vous essayez seulement de configurer la mise en page d'un document qui est en retard. L'environnement multicol permet des mises en page à une ou plusieurs colonnes sur une même page.

Je vais essayer uniquement multicol et vwcol dans cet article. Comme d'habitude, j'utiliserai le paquet lipsum pour générer du faux texte. Je vais les tester pour savoir si des tableaux et des images peuvent être inclus dans les colonnes. Je vais commencer par vwcol puisqu'il a été développé en premier (voir le code ci-dessus).

I hope the code is reasonably self-explanatory. The option “widths” sets up the number and size of the columns. In this example I used decimals, per-cents are also acceptable, as are physical units like inch and cm. If Latex calculates the total of the column widths plus the spacing between columns exceeds the margin widths, the file will not compile. The “rule=1pt” tells Latex to put a line 1 point wide between the columns. Vwcol is restricted to putting columns on one page. When I added lipsum[5] inside the vwcol environment, all of the columns shifted to the next page of the document and text filled to the physical bottom of the page, there was text in the bottom margin area. This is clearly an error. If you are writing or laying out a newsletter or magazine you want to be able to have articles that flow from one page to the next. Vwcol is not adequate for this work. I will next experiment with the multicol environment using similar code to what I used with vwcol (top left).

J'espère que le code est assez explicite. L'option « widths » définit le nombre et la taille des colonnes. Dans cet exemple, j'ai utilisé des décimales, mais les pourcentages sont également acceptables, tout comme les unités physiques telles que le pouce et le cm. Si LaTeX calcule que le total des largeurs de colonne plus l'espacement entre les colonnes dépasse les largeurs de marge, le fichier ne sera pas compilé. La « règle=1pt » indique à LaTeX de placer une ligne de 1 point de large entre les colonnes.

Vwcol est limité à la mise en place de colonnes sur une page. Lorsque j'ai ajouté lipsum[5] dans l'environnement vwcol, toutes les colonnes se sont déplacées vers la page suivante du document et le texte s'est rempli jusqu'au bas physique de la page, il y avait du texte dans la zone de la marge inférieure. Il s'agit clairement d'une erreur.

Si vous écrivez ou mettez en page une lettre d'information ou un magazine, vous voulez que les articles soient fluides d'une page à l'autre. Vwcol n'est pas adapté à ce travail.

Je vais maintenant expérimenter l'environnement multicol en utilisant un code similaire à celui que j'ai utilisé avec vwcol (en haut à gauche).

Notice the name of the package is multicol but, to begin and end the environment, an “s” is added to the end of the package name. I am sure you can see that the three columns in the multicol example are equal width and that the column rule is missing. The column separator rule can be inserted using \setlength{\columnseprule}{2pt}. If the document uses the package color then the colour of the column rule can also be changed: \def\columnseprulecolor{\color{red}} If I add a few more paragraphs I can make the columns go onto the second page. I have also added a paragraph outside the multicols environment in a single column (see code above). I can introduce another multicols environment with either the same or a different number of columns. The ability to switch from multiple columns to a single column allows for images and tables and other items to go from left margin to right margin without interfering with the columns of text. The multicol environment has a great deal of flexibility. It should satisfy the needs of most writers and editors who need multi-column layouts. I strongly recommend reading the accompanying PDF file and experimenting with various options before attempting to use the multicol environment in production.

Remarquez que le nom du paquet est multicol mais que, pour commencer et terminer l'environnement, un « s » est ajouté à la fin du nom du paquet. Je suis sûr que vous pouvez voir que les trois colonnes de l'exemple multicol sont de largeurs égales et que la règle de séparation des colonnes est absente. La règle de séparation des colonnes peut être insérée en utilisant \setlength{\columnseprule}{2pt}. Si le document utilise la couleur du paquet, la couleur de la règle de séparation des colonnes peut également être modifiée :

\def\columnseprulecolor{\color{red}}.

Si j'ajoute quelques paragraphes supplémentaires, je peux faire en sorte que les colonnes se prolongent jusqu'à la deuxième page. J'ai également ajouté un paragraphe sur une seule colonne, en dehors de l'environnement multicols (voir le code ci-dessus).

Je peux introduire un autre environnement multicols avec le même nombre, ou un nombre différent, de colonnes. La possibilité de passer de plusieurs colonnes à une seule permet aux images, tableaux et autres éléments de passer de la marge de gauche à la marge de droite sans interférer avec les colonnes de texte.

L'environnement multicol offre une grande souplesse. Il devrait satisfaire les souhaits de la plupart des rédacteurs et éditeurs qui ont besoin de mises en page en plusieurs colonnes. Je recommande vivement de lire le fichier PDF d'accompagnement et de tester les différentes options avant d'essayer d'utiliser l'environnement multicol en production.

issue186/latex.txt · Dernière modification : 2022/11/02 16:52 de andre_domenech