2010-03-11 4 views
1

J'ai un petit problème en ce moment. J'essaie de travailler avec indesign (cs3) et xml. Fondamentalement, j'ai un modèle qui a 1 master dps, les deux pages ont les mêmes données (champs 1-5) mais l'un est aligné à gauche, un à droite - donc des styles de paragraphe légèrement différents. Ce que je veux être en mesure de faire est d'importer xml et avoir indesign flux les données des nœuds individuels dans de nombreuses pages.Indesign et XML - comment passer automatiquement à plusieurs pages avec des styles différents?

par exemple le format xml:

root 
    day 
    field1 
    field2 
    field3 
    field4 
    field5 
    day 
    field1 
    field2 
    field3 
    field4 
    field5 
    day 
    ... 

Je peux presque faire ce travail en marquant les cadres sur les pages maître, puis en créant des pages et importer le XML, mais il ne circule que les 2 premiers noeuds dans les pages reptitively pour le nombre total de tous les nœuds.

Je peux aussi presque le faire fonctionner en créant une page à partir des maîtres non étiquetés, puis en marquant les cadres avec les balises field1-5 puis en important le xml. Cela remplit la première page, mais je ne peux pas trouver un moyen de faire le reste des données dans de nouvelles pages ...

Ai-je raté quelque chose? Suis-je un abruti complet? Si quelqu'un peut offrir de l'aide, il sera grandement apprécié ...

Répondre

0

Citation de « Guide aux concepteurs d'Adobe InDesign et XML »:

... Sans plug-ins de script ou de tiers, il n'y a aucun moyen (que nous connaissions) pour qu'InDesign crée automatiquement plusieurs pages à partir de la mise en page structurée telle qu'elle apparaît après l'étape 4 de la leçon 4-17. Il est possible de créer les six cartes, mais pas automatiquement comme dans notre autre méthode.

Il est basé sur CS3, donc il peut y avoir une option dans CS4 ou CS5. Je suppose que cela signifie que la seule alternative est d'utiliser IDML. Cela semble plutôt compliqué, mais cela pourrait faire le travail.

Citation de "Adobe InDesign CS3 and XML:A Technical Reference"

éléments de texte répétant Clone. Sélectionnez cette option pour répliquer la mise en forme dans le fichier en cours pour plusieurs éléments.

InDesign vous permet de cloner une mise en page pour la répétition d'éléments de texte. Vous pouvez créer une seule instance de mise en forme (dans cet exemple, pour une recette), puis réutiliser cette mise en page pour créer des pages pour tous les autres contenus.

... ce qui suggère que cela peut être fait.

Mais là encore, de "Create placeholders for repeating content"

Un point essentiel, cependant, est que Adobe® InDesign® CS2 ne sera jamais créer de nouveaux cadres ou ajouter des pages pour accueillir de nouveaux éléments XML.

Alors, quel est le verdict final?Lire et relire attentivement tout, j'ai l'impression que c'est ce qu'ils disent:

  • Il est impossible d'avoir votre conception automatiquement répliquées (nouvelle page) avec l'apparition d'un certain élément. Cependant, si vous commandez vos tags correctement, vous pouvez faire faire flotter le contenu du document XML dans un cadre de texte, ce qui a pour effet d'avoir plusieurs parties de votre document XML disposées dans un De manière similaire, il y a encore et encore.
  • Toutefois, afin de vous assurer que tout le texte est flottant dans cette zone de texte et les balises sont utilisées encore et encore, vous sera besoin de vérifier l'option « éléments de texte répéter Clone » lors de l'importation. Sinon (du moins, c'est l'impression que je reçois, je ne l'ai pas essayée moi-même), ça va juste appliquer la disposition de la première occurrence de la balise, puis ignorer toutes les occurrences consécutives.

Donc, si vous vraiment voulez instancier plusieurs pages, je pense qu'il n'y a pas d'autre choix que d'exporter votre conception à IDML et avoir une sorte de processeur modify the contents of the IDML files.

1

Vous devez vous assurer que dans votre éditeur d'histoire, les balises reflètent avec précision les balises dans votre XML sous la racine.

Dans votre exemple, cela impliquera probablement d'ajouter une balise 'day' autour de vos balises field1, field2, etc.

Ensuite, lorsque vous utiliserez des éléments de texte répétitifs, tous les jours seront inclus.

0

La réponse ci-dessus n'est pas entièrement correcte. Vous devez lire tout le livre pour obtenir les bonnes informations. Il est possible de créer et de transférer des données XML sur plusieurs pages. La citation ci-dessus provient de la mauvaise section. Il s'agit d'utiliser la "méthode-cadre" décrite au chapitre 4 du livre. En fait, il est facile de faire ce que vous voulez en utilisant la "méthode de flux".

Si la méthode de flux ne fonctionne pas comme vous le souhaitez, vous pouvez créer la méthode souhaitée à l'aide de XSLT.

+1

[S'il vous plaît ne pas utiliser des signatures ou des accroches dans vos messages] (http : //stackoverflow.com/faq#signatures) –

0

Encore une suggestion, ne marque rien sur les pages maîtres. Si vous marquez la page maître, un seul élément de données peut être utilisé ici. Il apparaîtra sur chaque page.

À la place, ne marquez que les cadres et les espaces réservés sur les pages du corps. Les données peuvent circuler à partir d'éléments clonés ou tous à la fois.

Tout ce dont vous avez besoin est expliqué dans le manuel Guide du concepteur d'Adobe InDesign et XML.

Si vous voulez construire des tables XML, le meilleur moyen est d'utiliser un fichier XSLT pour construire la structure que vous voulez.

0

La citation: "Un point clé, cependant, est qu'Adobe® InDesign® CS2 ne créera jamais de nouveaux cadres ou n'ajoutera pas de pages pour accueillir de nouveaux éléments XML." est faux. InDesign CS2 + CAN et crée de nouvelles images et pages si vous configurez correctement votre mise en page. CS ne clone pas les éléments ou les mises en page, mais CS2 peut et fait.

InDesign ne créera PAS de trames non liées ou autonomes. Les cadres seront soit liés ensemble soit en ligne.

Étant donné que vous ne pouvez pas voir les bords d'un cadre sauf si vous les activez, quelle différence cela fait-il si les cadres sont en ligne? Vous pouvez les créer et les transférer vers de nouvelles pages en utilisant les options "Conserver" du paragraphe.

Jim

5

je me rends compte que c'est une question ancienne, mais je crois avoir un aperçu ici.

InDesign crée des cadres et des pages en fonction de la taille d'un fichier XML.

Voici comment ... Je me réfère à CS6 pour cette réponse, mais je l'ai fait pendant des années à partir de CS3.

  1. Assurez-vous que votre modèle Indd a au moins 2 pages. Ceux-ci peuvent être des pages maîtres reflétant les mises en page droite et gauche. Les pages doivent avoir le même cadre de texte principal. C'est une option lorsque vous créez un nouveau document.

  2. Importez votre fichier XML comme d'habitude. Veillez à cocher toutes les options dont vous avez besoin pour votre flux de travail XML.

  3. Placez le code XML dans le bloc de texte principal. Étant donné que je parcours généralement des documents entiers, je sélectionne l'élément racine et le déplace vers le cadre, mais cela fonctionne sur tous les nœuds que vous sélectionnez. Si le contenu du XML est plus grand que le cadre ne peut en supporter, il y aura un signe plus rouge (+) dans une case carrée vers le bas à droite du cadre. Cliquez sur le signe plus et vous obtiendrez une flèche contenant une icône en papier et une représentation de votre contenu XML. Si vous cliquez simplement à l'intérieur du cadre, InDesign acheminera autant de contenu que possible dans ce cadre et vous devrez répéter le processus en ajoutant des pages et en plaçant du contenu dans le cadre. la fin. Toutefois, si vous maintenez la touche MAJ enfoncée lorsque vous placez le contenu, l'icône de papier se transforme en flèche fléchée. Après la mise en place, InDesign transmet automatiquement le contenu aux pages gauche et droite jusqu'à la fin de la sélection XML. Si vous avez des pages maîtres, il utilisera ces pages pour la gauche et la droite tout au long.

Si vos balises sont mappées sur des styles, les styles s'afficheront sur les pages.

Une note sur le mappage des étiquettes aux styles ... Effectuez le mappage de tag/style avant pour placer le contenu. Sinon, InDesign devra redessiner les pages. Il s'agit d'une action gourmande en mémoire qui risque de bloquer InDesign en fonction de la taille de votre fichier. Si quelque chose, il faudra beaucoup plus longtemps que si vous aviez cartographié les styles avant le placement.

J'espère que cela aide quelqu'un. Je n'ai pas vu cette action documentée par Adobe ou dans d'autres forums. Il existe de nombreuses actions et fonctionnalités non documentées dans InDesign, notamment en ce qui concerne XML.

0

Dans Indesign aller à

Preferences>Type>Smart Text Reflow 

et sélectionnez à cocher Lorsque vous placez le texte de la copie coulera à nouveau la page automatiquement