Forums Développement Multimédia

Les formations Mediabox
Les formations Mediabox

Fusion de données : mise en page automatique

Compatible In-Design CS4. Cliquer pour en savoir plus sur les compatibilités.Par jrboulay (JR Boulay), le 22 janvier 2011

Dans ce tutoriel notre but est d'optimiser l'utilisation de InDesign CS4 ou CS5 pour préparer un diaporama/présentation destiné à une publication “écran”, publication qui pourra se faire au format SWF (Flash), au format PDF, ou bien une combinaison des deux.

Les mêmes méthodes pourraient s'appliquer à des documents prévus pour l'impression, offset ou numérique, si on utilisait des images en haute résolution.

Ceci est le vrai fichier final au format SWF (affiché en réduction), cliquez sur la flèche blanche : L"extension Adobe Flash Plugin est nécessaire pour afficher ce contenu.

Dans ce tutoriel nous allons principalement utiliser la fonction de fusion de données, mais aussi le rechercher-remplacer GREP, les styles imbriqués, les styles de paragraphe, les styles de caractères, les gabarits de page et les boutons interactifs à plusieurs états.

Notre maquette pourrait être un catalogue, un diaporama, ou n'importe quoi d'autre contenant un type de présentation récurrent. Ici le but c'est de réaliser une présentation interactive avec une mise en page basée sur quatre rubriques : Titre, Légende, Texte explicatif, Image.

Ces quatre rubriques occupent une page à chaque fois, page sur laquelle doivent également figurer les boutons de navigation Page suivante et Page précédente.

Nous avons 22 pages au total, mais il pourrait tout aussi bien y en avoir 220 ou 2200 que cela ne changerait pas grand-chose au temps total nécessaire à leur réalisation, c'est tout l'intérêt de l'automatisation (Fusion de données) sur le labeur humain, sans parler des tâches répétitives sur lesquelles le gain de temps est manifeste.

Cet exercice est réalisable avec InDesign CS4 et CS5. Peut-être aussi avec CS3 mais je n'ai pas essayé…
Niveau moyen/avancé
Il vous faudra connaitre les bases de l'utilisation d'InDesign pour suivre ce tutoriel, notamment l'utilisation des styles et des gabarits.

Préparation 1 : le fichier INDD

Comme souvent, le plus long c'est la préparation et en particulier la première fois, mais pas de panique : pour cet exercice tous les éléments sont fournis pour pouvoir entrer rapidement dans le vif du sujet (à télécharger ici). Nous avons un fichier INDD contenant la maquette de départ, un fichier CSV contenant les données et les images au format JPEG qui vont avec, placées au même niveau et dans le même dossier/répertoire.

Les styles

La maquette contient un style d'objets appliqué au bloc image et des textes de placement sur lesquels sont déjà appliqués les différents styles de paragraphes et de caractères. Ceux-ci utilisent exclusivement la police Myriad Pro, gage de compatibilité et d'absence d'alerte concernant les polices manquantes car elle est livrée avec InDesign, cependant on pourra aisément la remplacer par une police de caractères plus fun en modifiant les styles Titre, Texte, et Légende.

Le style imbriqué

Le style de paragraphe Légende contient un style (de caractère) imbriqué Copyrights qui sert à différencier le crédit photo du reste de la légende en appliquant l'attribut italique et une couleur différente.

Pour imbriquer ce style de caractère dans le style de paragraphe on a demandé, dans le panneau Lettrines et styles imbriqués, à n'appliquer aucun style de caractère jusqu'au caractère ©, et après ce caractère à appliquer le style de caractère copyrights, jusqu'à la fin du paragraphe. Dans la terminologie InDesign jusqu'à signifie “jusqu'à avant”, et sur veut bien dire ce qu'il veut dire. Donc dans cet exemple le style de caractère copyrights s'applique à partir du caractère © inclus, et jusqu'à la fin du paragraphe.

Le gabarit

Dans la maquette seuls les blocs “dynamiques”, ceux destinés à recevoir les données, sont placés sur la page 1. Les autres blocs “statiques” (fond noir, boutons-flèches) sont placés sur le A-Gabarit. En effet, lors de la fusion de données InDesign ne duplique que les blocs dynamiques de la page, c'est pourquoi les autres blocs doivent être placés sur le gabarit : pour pouvoir être dupliqués en même temps.

Sur le A-Gabarit il y a un bloc à fond noir et deux boutons à trois états en forme de flèche, l'action Page précédente est affectée au bouton de gauche et l'action Page suivante est affectée au bouton de droite. Ici c'est le caractère “flèche” issu d'une police de caractères quelconque qui a été placé dans un bloc de texte et qui a ensuite été vectorisé. Une fois l'aspect des trois états du bouton finalisé, il a été dupliqué et pivoté, ensuite on a associé à chaque bouton-flèche l'action correspondante via la palette Bouton. Je ne détaille pas la méthode de création des boutons-flèches à trois états parce-que ce n'est pas exactement la même dans CS4 et dans CS5 mais elle est parfaitement décrite dans l'Aide, et aussi parce-que ce n'est pas l'objet de ce tutoriel.

Préparation 2 : les fichiers de données

Le fichier .CSV

Voyons maintenant le fichier CSV, c'est en fait un bête fichier texte dans lequel le caractère virgule tient lieu de balise de séparation et qui est enregistré/exporté au format .CSV depuis un tableur ou une base de donnée (CSV : Comma Separated Values = Valeurs séparées par des virgules). Sauf que dans la pratique on utilise le caractère tabulation plutôt que la virgule pour séparer les valeurs, ce qui relève du bon sens le plus élémentaire quand il s'agit comme dans notre cas de données textuelles justement susceptibles de contenir de nombreuses virgules.

C'est pendant l'enregistrement du fichier au format .CSV que cela se décide, dans les Options d'enregistrement. Que l'on utilise Microsoft Excel, OpenOffice ou un autre logiciel on retrouve toujours cette option exprimée d'une manière ou d'une autre. Attention également à l'encodage (Jeu de caractères) utilisé, InDesign ne les accepte pas tous, loin de là.

Les images

Nous avons dans le fichier CSV quatre colonnes/rubriques de données : Titre, Texte, Légende, @Image. La présence de l'arobase devant le mot Image indique à InDesign que les valeurs contenues dans cette colonne ne sont pas à importer telles quelles mais que ce sont les noms de fichier des images à importer.

Peu importe leurs noms, seule la correspondance des rangées est prise en compte lors de l'importation, mais dans un soucis louable de clarté pour l'esprit humain il peut être utile de les numéroter.

Dans cette colonne nous avons simplement le nom de fichier des images car elles sont stockées au même niveau que le fichier CSV et dans le même dossier (Links). Dans un autre cas de figure, images stockées sur un serveur par exemple, il faudrait ajouter le chemin d'accès complet devant le nom de fichier des images dans la colonne @Image du fichier CSV.

Concernant les fichiers images proprement dit pas de difficulté particulière, ce sont des images au format JPEG, déjà compressées et optimisées, ce qui aura une incidence au moment de l'exportation finale.

Préparation 3 : la matrice de fusion

Liaison matrice - données

Revenons à notre maquette, avant d'envisager une fusion de données il va falloir indiquer à InDesign à partir de quels fichiers on veut le faire, cela se passe dans la palette Fusion des données, que l'on trouvera dans menu Fenêtre > Utilitaires dans CS5, et dans menu Fenêtre > Automatisation dans CS4.

Dans le menu local de cette palette il faut demander à Sélectionner la source de données, dans notre exemple il s'agit du fichier Histoire-des-villes.csv. Après l'avoir sélectionné les quatre rubriques qui le compose sont listées dans la palette.

Placement des balises

À partir de là il faut sélectionner tout le texte de placement qui se trouve dans le bloc de titre et cliquer sur la rubrique Titre dans la palette de fusion de données pour le voir remplacé par la balise «Titre», même chose pour les blocs contenant la légende et le texte explicatif.

Pour les images aussi, il suffit de sélectionner le bloc image avec l'outil de sélection Flèche noire et de cliquer sur la rubrique @Image dans la palette de Fusion des données pour que l'image de placement soit remplacée par la balise «Image». Cette méthode préserve les styles affectés aux blocs et aux textes. Notre matrice de fusion de données est prête.

Il est grand temps de penser à Enregistrer-sous ce document, car bien que par défaut InDesign sauvegarde automatiquement et en permanence ses fichiers à l'insu du plein gré de l'utilisateur il convient de rester raisonnable et prudent. ;-)

Fusion des données

Dans le menu local de la palette Fusion des données nous allons demander à Créer un document fusionné, ce qui provoque l'affichage de la fenêtre du même nom qui permet de paramétrer la suite des évènements.

Dans l'onglet Enregistrements de cette fenêtre nous allons demander à fusionner Tous les enregistrements (mais ce n'est pas obligatoire) nous allons demander un Enregistrement unique pour chaque page, et aussi à Générer un rapport sur le texte en excès et à Avertir si des images sont manquantes. L'enregistrement unique c'est quand une ligne du fichier CSV correspond à une seule page du futur document fusionné, l'enregistrement multiple c'est quand plusieurs lignes du fichier CSV peuvent être dupliquées sur une même page, par exemple dans le cas où l'on duplique des petites cartes de visites sur une grande planche.

Nous n'avons donc pas besoin de l'onglet Mise en page d'enregistrements multiples qui permettrait de paramétrer la disposition des enregistrements multiples sur les futures pages si besoin était, et comme les choses sont décidément bien faites tout y est opportunément grisé.

Dans l'onglet Options on va essentiellement paramétrer la mise en place des images dans leur bloc d'accueil, comme nous avons mis un joli cadre blanc sur la matrice nous allons Remplir les blocs proportionnellement et Centrer dans le bloc, ce qui n'empêchera pas d'éventuelles modifications ultérieures.

L'option Lier les images permet de les incorporer ou non dans le fichier InDesign, ce choix découle essentiellement de la façon de travailler de chacun car s'agissant de petites images en basse définition destinées à un affichage écran cela ne sera pas pénalisant en terme de poids de fichier si on choisit de les incorporer.

⇒ OK

InDesign ne modifie jamais la matrice, ce qui permet de la réutiliser facilement, c'est toujours dans un nouveau document que le résultat de la fusion est présenté. Cependant, avant d'afficher le nouveau document qui contient 22 pages InDesign alerte au sujet d'un excès de texte sur la page 22, comme quoi c'était une bonne idée d'avoir préalablement coché cette option ! (Cette alerte n'est pas obligatoire : elle est dépendante des modifications éventuellement effectuées dans le style de paragraphe texte)

Fignolages

Le nouveau document est presque immédiatement utilisable, sous réserve de quelques petites retouches :

Boutons de navigation

- page 22, nous allons supprimer le bouton-flèche Page suivante, pour la bonne raison qu'après la dernière page il n'y a jamais de page suivante, c'est un état de fait contre lequel on ne peut rien et on se doit d'agir en conséquence.

CTRL/CMD* + MAJ + clic sur le bouton-flèche droite pour le déverrouiller, car c'est un élément qui vient du A-Gabarit et qui n'est donc pas sélectionnable directement sur la page, et après l'avoir sélectionné on le supprime (Celui qui demandera comment on fait sera immédiatement et définitivement exclu de ce tutoriel).

- page 1 : même motif et même punition pour le bouton-flèche gauche “Page précédente”.

* CTRL = Control, c'est la touche du clavier à utiliser sur Windows, CMD = Command (ex-Pomme) c'est la touche du clavier à utiliser sur Mac, mais vous le saviez déjà, non ? ;-)

Textes et images

- page 22, dans notre exemple InDesign a pris la peine de nous fournir un Rapport sur le texte en excès, nous allons profiter du fait qu'il n'y a pas de légende sous l'image pour agrandir un peu le bloc de texte en hauteur de façon à ce que tout son contenu soit visible et lisible.

- certaines images auront avantage à être repositionnées manuellement car le centrage automatique n'est pas ce qu'il y a de plus esthétique en matière de recadrage photographique (pages 1, 4, 5 et 6 par exemple…).

- pour toute autre modification d'ordre esthétique, d'une manière générale on se félicitera d'avoir utilisé les styles d'objets et les styles de paragraphes dans la maquette/matrice car cela évitera de refaire 22 fois la même chose à chaque fois que l'on voudra changer l'aspect des textes ou des images dans le document fusionné.

Transitions de page

- dans le menu Pages > Transitions de page > Sélectionner il faudra paramétrer le type de transition que l'on voudra voir s'appliquer lors du changement de page dans le document final.

Dans l'exemple c'est l'option Poussée vers la gauche qui a été choisie, nous allons voir que c'est heureusement un choix réversible et modifiable ultérieurement. On aurait pu le faire avant, dans la matrice, mais ainsi cela laisse plus de souplesse dans tous les cas de figure. C'est de toute façon une option que l'on retrouvera plus tard, donc ce n'est pas bien grave si on l'oublie à cette étape.

Rechercher-remplacer GREP

- sur toutes les pages, ou presque : le texte de légende commence par un numéro, immédiatement suivi d'un trait d'union, immédiatement suivi par le texte. Nous allons placer une espace demi-cadratin (l'équivalent de la largeur du “n”) entre le trait d'union et le texte qui le suit sur toutes les pages où le cas se présente, parce-que ce sera plus lisible et parce-que cela nous permet d'utiliser le Rechercher-remplacer GREP, histoire qu'il perde un peu de son aura mystérieuse et inaccessible.

Menu Edition > Rechercher/Remplacer > Onglet GREP. Pourquoi le Rechercher/Remplacer GREP ? Tout simplement parce-que le Rechercher/Remplacer Texte ne permet pas de remplacer le résultat d'une recherche générique/variable par elle-même, et encore moins de la remplacer par elle-même plus autre chose (GREP : Get Regular Expression Pattern = Recherche de séquence à expression régulière).

Dans la fenêtre Rechercher/Remplacer GREP nous allons d'abord Rechercher n'importe quel chiffre suivi d'un trait d'union : en cliquant dans le menu local de la palette , symbolisé par une arobase, on accède au sous-menu Caractère générique > Chiffre quelconque, dont le métacaractère est “\d”, et ensuite nous tapons simplement le “-” avec le clavier comme habituellement, et nous plaçons toute cette requête entre parenthèses pour la transformer en une Expression. Une (Expression) c'est une entité qui ensuite pourra être remplacée à l'identique, quelle que soit sa valeur originelle.

Ensuite nous allons Remplacer par : $1~> Où “$1” signifie que l'on remplace la valeur absolue de (Expression) recherchée à l'identique, et où “~>” est le métacaractère qui signifie que l'on ajoute une Espace demi-cadratin juste après. Plutôt qu'une Espace demi-cadratin on peut préférer remplacer par une Espace fine ou par n'importe quel autre autre signe en guise de séparateur, tout est disponible dans le menu local de la fenêtre Rechercher/Remplacer, ou bien directement au clavier.

Pour corser le tout nous allons forcer la recherche à l'intérieur du style de paragraphe Légende uniquement, pour être certain de ne pas commettre d'impairs dans les autres textes. Un premier clic sur le bouton Rechercher permet de s'assurer de la validité de la requête recherchée, et un deuxième clic sur le bouton Tout remplacer corrige toutes les occurrences présentes dans le document.

Maintenant il reste à exporter notre création géniale dans le format de sortie demandé par le donneur d'ordre supposé : soit en SWF, soit en PDF, soit les deux.

Exportation

Export SWF

Menu Fichier > Exporter > format Flash Player (SWF) Dans l'onglet Général nous allons exporter Toutes les pages, Générer le fichier HTML même si ce n'est pas indispensable, Afficher le fichier SWF… par confort, demander une échelle de 200% car notre document d'origine fait 800 x 600 ce qui risque d'être trop petit pour les écrans modernes, et surtout nous allons sélectionner la très demandée transition Page tournée en lieu et place de celle précédemment choisie.

Dans l'onglet Avancé on réglera les options comme sur cette copie d'écran car ce sont les plus génériques et aussi celles qui nous arrangent bien dans cet exemple. Il n'est pas sur que les images déjà au format JPEG soient recompressées lors de cette exportation car la logique voudrait qu'elles soient intégrées telles quelles sans nouvelle dégradation (à vérifier), mais ce qui est certain c'est qu'il faudra bien commencer un jour à tenir compte du fait qu'il y a plus de dix ans que l'on ne fabrique plus d'écrans cathodiques et que la résolution minimale d'un écran plat de base est de 96 ppp.

Après validation on obtient un fichier HTML et un fichier SWF, le premier n'étant qu'un lien vers le second. On peut aussi ouvrir directement le fichier SWF avec le navigateur web ou avec un autre logiciel, cela ne change pas grand-chose à son rendu : c'est superbe. L'effet page tournée est disponible sur le boutons et dans les coins de pages.

Voir : Histoire des villes SWF.swf

Export PDF

- CS4 : menu Fichier > Exporter > format Adobe PDF, pour ne pas entrer dans les détails techniques on utilisera avantageusement le paramètres prédéfini de conversion en PDF abracadabra-PDF multimedia gratuitement disponible à cette adresse : http://abracadabrapdf.net/articles.php?lng=fr&pg=335

- CS5 : menu Fichier > Exporter > format Adobe PDF (interactif), en cochant impérativement l'option Boutons et multimédia : Tout inclure. Changement de méthode impératif avec CS5, en effet si l'on utilisait l'export au format Adobe PDF (impression) comme au bon vieux temps de CS4 on perdrait au passage les boutons de navigation que l'on s'est décarcassé à créer dans InDesign, et ce n'est pas ce que l'on veut.

Dans les deux cas on conservera ou non les Calques Acrobat en fonction de sa propre philosophie puisque cela ne change pas grand-chose au poids final du PDF, on va Créer un PDF balisé parce-que ça compte beaucoup pour les handicapés, mais aussi pour les moteurs de recherche et pour l'indexation.

S'agissant de diffusion numérique c'est un des principaux atout du PDF face au SWF : la recherche et l'indexation textuelle intégrale dans les métadonnées et dans le contenu des documents. Par contre, faute de pouvoir utiliser la transition de page Page tournée dans un PDF nous conserverons la transition Poussée et l'option Ouvrir en mode plein écran.

Voir - Histoire des villes PDF.pdf

Export : autres possibilités

Export SWF dans PDF

En réalité, on peut quand même utiliser la transition Page tournée dans un PDF, mais c'est en dehors des compétences de InDesign, pour faire cela il faut créer un PDF à partir du fichier SWF en utilisant le logiciel Adobe Acrobat Pro, version 9 ou ultérieure.

C'est un peu hors-sujet mais cela permet d'appliquer les qualités habituelles du format PDF au fichier SWF ainsi incorporé : universalité, pérennité, protection, commentaires/annotations, etc. Mais hélas sans balisage, ni recherche, ni indexation.

Voir : Histoire des villes SWF dans PDF.pdf

Export SWF et PDF

Ca fait un de plus que prévu et on est encore hors-sujet mais le logiciel Adobe Acrobat Pro 9+ permet aussi d'assembler les deux documents PDF sus-cités en un seul, et donc de réunir le meilleur des deux mondes : transition “Page tournée”, balisage, recherche, indexation et toutes les autres qualités du format PDF.

Le top, assurément !

Voir : Histoire des villes SWF et PDF.pdf

Les sources

tuto-fusion_de_donnees_histoire_des_villes.pdf

Clic-droit sur le lien ci-dessus pour enregistrer le fichier sur votre ordinateur (environ 20 Mo).

Autres ressources

Concernant le balisage et l'accessibilité voir cet intéressant site de ressources :

http://www.pdf-accessible.com/-PDF-et-accessibilite,2-.html