[GastForen Programme Print/Bildbearbeitung Adobe InDesign Workflow Wordvorlage mit Marginalientexten -> Indesign

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste
Print/Bildbearbeitung - Photos, Layout, Design
Themen
Beiträge
Moderatoren
Letzter Beitrag

Workflow Wordvorlage mit Marginalientexten -> Indesign

Wolfi8
Beiträge gesamt: 83

28. Sep 2007, 15:58
Beitrag # 1 von 15
Bewertung:
(4115 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Ausgangssituation:
Layout ist mit Textspalte und nebenstehenden absatzbezogenen Marginalientexten angelegt.
Marginalientexte werden mit verankerten Textrahmen automatisch im Textfluss gehalten und per einem Objektstil definiert.
Redakteur liefert .docs an.

Problem:
Wie erziele ich einen weitestgehend automatisierten Textimport, der mir ausgezeichnete Marginaltexte des Worddokuments in neue Textrahmen mit Marginalien-Objektstil in Indesign erzeugt, natürlich verankert im entsprechenden Fließtext.

Hat damit schomal jemand Erfahrung gemacht?
X

Workflow Wordvorlage mit Marginalientexten -> Indesign

Martin Fischer
  
Beiträge gesamt: 12783

28. Sep 2007, 17:16
Beitrag # 2 von 15
Beitrag ID: #314746
Bewertung:
(4097 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Wenn die Marginalien aus Word in verankerten Textrahmen ankommen, könnte man ein relativ simples Skript schreiben, mit dem der gewünschte Objektstil zugewiesen wird.

Quick and dirty etwa so (der Objektstil heißt 'Marginalie'):
Code
var myStyle = app.activeDocument.objectStyles.item( 'Marginalie' ); 
app.activeDocument.stories.everyItem().pageItems.everyItem().applyObjectStyle( myStyle, true );


Wenn der Text für die Marginalspalte anders ausgezeichnet ist, müßte man etwas anders vorgehen. Ich meine mich zu erinnern, früher mal ein entsprechendes Skript im Forum veröffentlich zu haben. Mal nach 'anchoredObjects' suchen. Oder so etwas wie 'simpleVersion' oder 'notSoSimpleVersion'.


als Antwort auf: [#314725]
(Dieser Beitrag wurde von Martin Fischer am 28. Sep 2007, 17:19 geändert)

Workflow Wordvorlage mit Marginalientexten -> Indesign

Wolfi8
Beiträge gesamt: 83

1. Okt 2007, 15:33
Beitrag # 3 von 15
Beitrag ID: #315005
Bewertung:
(4051 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hi Martin,

vielen Dank. Das ist genau das was ich suche. Testlauf ist prima durchgegangen.

Kannst du mir vielleicht noch kurz erklären, nach welcher Logik die verankerten Textrahmen angesteuert werden. “stories.everyItem().pageItems.everyItem()." ist für mich nicht ganz nachvollziehbar. Ich möchte ausschließen, das alle eingebetteten Objekte den Objektstil zugewiesen bekommen – oder am besten nur die, die auch mit einem Absatzformat “Marginalie" vesehen sind.


als Antwort auf: [#314746]

Workflow Wordvorlage mit Marginalientexten -> Indesign

Martin Fischer
  
Beiträge gesamt: 12783

1. Okt 2007, 16:02
Beitrag # 4 von 15
Beitrag ID: #315010
Bewertung:
(4039 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Wolfi,

ich hatte geschrieben, daß das Skript quick & dirty sei.

pageItems habe ich deswegen gewählt, weil es in CS2 und CS3 gleichermaßen funktioniert.
pageItems sind alle platzierbaren Objekte - also nicht nur Textrahmen, sondern auch verankerte Bildrahmen.
myStory.pageItems sind alle platzierbaren Objekte innerhalb eines Textabschnitts (also alle verankerten Objekte [Textrahmen, Bildrahmen]).

Richtiger wäre textFrames.
Aber in CS2 sind myStory.textFrames die verknüpften Textrahmen des Textabschnitts, während in CS3 myStory.textFrames korrekterweise die verankerten Textrahmen im Textabschnitt sind.

In CS3 könntest Du also "stories.everyItem().textFrames.everyItem()" verwenden.
In CS2 müßtest Du erst eine Sammlung machen (myObjects = stories.everyItem().pageItems) und dann in einer Schleife den constructor.name (die Klasse) abfragen und entsprechend handeln.

> oder am besten nur die, die auch mit einem Absatzformat “Marginalie" vesehen sind.

Das ließe sich leichter wieder anders bewerkstelligen:
Suche im gesamten Dokument nach Absatzformat "Marginalie".
Und weise in einer Schleife dem übergeordneten Textrahmen (parentTextFrames[0]) den entsprechenden Objektstil zu.


als Antwort auf: [#315005]
(Dieser Beitrag wurde von Martin Fischer am 1. Okt 2007, 16:23 geändert)

Workflow Wordvorlage mit Marginalientexten -> Indesign

Wolfi8
Beiträge gesamt: 83

1. Okt 2007, 16:51
Beitrag # 5 von 15
Beitrag ID: #315027
Bewertung:
(4023 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Danke Martin,

grabe mich da mal ein.


als Antwort auf: [#315010]

Workflow Wordvorlage mit Marginalientexten -> Indesign

Martin Fischer
  
Beiträge gesamt: 12783

2. Okt 2007, 08:43
Beitrag # 6 von 15
Beitrag ID: #315093
Bewertung:
(3997 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Wolfi,

im Folgenden stelle ich drei mögliche Varianten der Identifizierung der relevanten Textrahmen für InDesign CS3 vor.

Gegeben:
1. Absatzformat "Marginalien"
2. Objektstil "Marginalien"

1. Schleife durch alle platzierbare Objekte und Prüfung, ob
a. das Objekt ein Textrahmen ist,
b. der Textrahmen mindestens einen Absatz beinhaltet,
c. diesem Absatz das AF "Marginalie" zugewiesen ist.

Wenn diese Bedingungen zutreffen, dann weise dem entsprechenden Objekt den Objektstil "Marginalie" zu (ggf. mit Löschen von Abweichungen).

Code
myObjects = app.activeDocument.allPageItems; 
for (i = 0; i < myObjects.length; i++)
if (myObjects[i].constructor.name == "TextFrame" && myObjects[i].paragraphs.length >= 0 && myObjects[i].paragraphs[0].appliedParagraphStyle.name == "Marginalie")
myObjects[i].applyObjectStyle(app.activeDocument.objectStyles.item('Marginalie'), true)



2. Schleife durch alle Textabschnitte und Schleife durch die jeweils darin enthaltenen verankerten Textrahmen. Hier wird jeweils geprüft, ob der erste Absatz eines verankerten Textrahmens das AF "Marginalie" zugewiesen bekommen hat. Wenn ja, dann wird dem Textrahmen der Objektstil "Marginalie" zugewiesen:
Code
myStories =  app.activeDocument.stories; 
for (s = 0; s < myStories.length; s++)
{
myAnchoredFrames = myStories[s].textFrames;
for (i = 0; i < myAnchoredFrames.length; i++)
if (myAnchoredFrames[i].paragraphs.length >= 0 && myAnchoredFrames[i].paragraphs[0].appliedParagraphStyle.name == "Marginalie")
myAnchoredFrames[i].applyObjectStyle(app.activeDocument.objectStyles.item('Marginalie'), true)
}



3. Suche nach dem Absatzformat "Marginalie" und Zuweisung des Objektstils "Marginalie" an den übergeordneten Textrahmen:

Code
app.findTextPreferences = app.changeTextPreferences = null;  
app.findTextPreferences.appliedParagraphStyle = "Marginalie";

myResult = app.activeDocument.findText();

for (i = 0; i < myResult.length; i++)
myResult[i].parentTextFrames[0].applyObjectStyle(
app.activeDocument.objectStyles.item('Marginalie'), true
)



als Antwort auf: [#315027]

Workflow Wordvorlage mit Marginalientexten -> Indesign

Carthaus
Beiträge gesamt: 18

2. Okt 2007, 12:38
Beitrag # 7 von 15
Beitrag ID: #315155
Bewertung:
(3973 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Wolfi,

verstehe ich das richtig, dass der Text in Word bereits in verankerten, positionierten Rahmen vorliegt? Hast Du auch Indexeinträge im Text?
Kontrolliere vorsichtshalber, ob alle Indexeinträge beim Import übernommen werden. Ich habe die Erfahrung gemacht, dass die Einträge teilweise verschwinden, wenn die Word-Dokumente positionierten Text enthalten. Das passiert bei mir sowohl mit CS2/Win, als auch mit CS3/Win, zur Mac-Variante kann ich nichts sagen.

Viele Grüße,
Jan


als Antwort auf: [#315027]

Workflow Wordvorlage mit Marginalientexten -> Indesign

Wolfi8
Beiträge gesamt: 83

15. Okt 2007, 14:05
Beitrag # 8 von 15
Beitrag ID: #317040
Bewertung:
(3884 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Danke Martin,

für die drei Varianten. Die helfen mir wirklich weiter.


als Antwort auf: [#315093]

Workflow Wordvorlage mit Marginalientexten -> Indesign

Wolfi8
Beiträge gesamt: 83

15. Okt 2007, 14:07
Beitrag # 9 von 15
Beitrag ID: #317041
Bewertung:
(3884 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Carthaus,

danke für die Antwort. Habe im Moment keine Indexe und kann das nicht gegenprüfen. Werde das aber im HInterkopf behalten.


als Antwort auf: [#315155]

Workflow Wordvorlage mit Marginalientexten -> Indesign

Jürgen Althaus
Beiträge gesamt: 102

26. Nov 2007, 14:43
Beitrag # 10 von 15
Beitrag ID: #324313
Bewertung:
(3761 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Martin,

wie so oft habe ich einen deiner genialen kleinen Helferlein im Einsatz der einem das Leben doch sehr viel einfacher gestaltet.

Jetzt habe ich aber noch eine kleine Frage ich benutze die erste Variante deines Scripts und es rückt auch alle Marginalien brav an ihren Platz. Gibt es eine Möglichkeit beim ausführen des Scripts gleichzeitig die Rahmengröße zu beinflussen? Da bei mir des öfteren die Marginalien sehr dicht aufeinander Folgen ist es recht schwierig immer den richtigen Rahmen bei einer Korrektur zu erwischen.

Danke schon mal und viele Grüße

Jürgen Althaus


als Antwort auf: [#315093]

Workflow Wordvorlage mit Marginalientexten -> Indesign

Martin Fischer
  
Beiträge gesamt: 12783

26. Nov 2007, 15:26
Beitrag # 11 von 15
Beitrag ID: #324321
Bewertung:
(3741 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Jürgen,

welches Skript verwendest Du (eventuell Link posten)?
Sollen die Textrahmen für die Marginalien feste Maße bekommen oder auf die Textmenge verkleinert skaliert werden?


als Antwort auf: [#324313]

Workflow Wordvorlage mit Marginalientexten -> Indesign

Jürgen Althaus
Beiträge gesamt: 102

26. Nov 2007, 16:01
Beitrag # 12 von 15
Beitrag ID: #324329
Bewertung:
(3723 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Martin,

ich benutze dieses Script
Code
app.findTextPreferences = app.changeTextPreferences = null;   
app.findTextPreferences.appliedParagraphStyle = "MG";

myResult = app.activeDocument.findText();

for (i = 0; i < myResult.length; i++)
myResult[i].parentTextFrames[0].applyObjectStyle(
app.activeDocument.objectStyles.item('Marginalie'), true
)


Damit rücke ich alle Marginalienrahmen an ihre richtige Position. Ich hab mal einen Screenshot gemacht. Die Marginalientextrahmen sind immer gleich groß und ragen über das Papier und oft auch in darauffolgende Marginalie hinein. Ich möchte nun gerne das der Rahmen nur z.B. 10×10mm groß ist und somit die nächsten Marginalienrahmen nicht berühren. Ich hab bisher noch keine Möglichkeit gefunden das irgendwie über den Obkektstil zu steuern:-?

Vielleicht kannst du mir helfen?


als Antwort auf: [#324321]
(Dieser Beitrag wurde von Martin Fischer am 26. Nov 2007, 16:06 geändert)

Anhang:
Bsp.jpg (213 KB)

Workflow Wordvorlage mit Marginalientexten -> Indesign

Martin Fischer
  
Beiträge gesamt: 12783

26. Nov 2007, 16:18
Beitrag # 13 von 15
Beitrag ID: #324331
Bewertung:
(3718 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Jürgen,

versuch's mal damit:
Code
app.findTextPreferences = app.changeTextPreferences = null;    
app.findTextPreferences.appliedParagraphStyle = "MG";

myResult = app.activeDocument.findText();

for (i = 0; i < myResult.length; i++)
{
myResult[i].parentTextFrames[0].applyObjectStyle( app.activeDocument.objectStyles.item('Marginalie'), true );
myGeo = myResult[i].parentTextFrames[0].geometricBounds;
myResult[i].parentTextFrames[0].geometricBounds = [myGeo[0], myGeo[1], myGeo[0] + 10, myGeo[1] +10]
}



als Antwort auf: [#324329]

Workflow Wordvorlage mit Marginalientexten -> Indesign

Jürgen Althaus
Beiträge gesamt: 102

26. Nov 2007, 20:09
Beitrag # 14 von 15
Beitrag ID: #324366
Bewertung:
(3689 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Danke Martin,

werde ich gleich morgen testen. Hab heute Abend nämlich Kinderdienst.:-)

Viele Grüße
Jürgen


als Antwort auf: [#324331]

Workflow Wordvorlage mit Marginalientexten -> Indesign

Jürgen Althaus
Beiträge gesamt: 102

27. Nov 2007, 07:16
Beitrag # 15 von 15
Beitrag ID: #324397
Bewertung:
(3656 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Vielen Dank Martin!!!
Das funktioniert ja mächtig prima:-))) Da wäre ich mit meinen bescheidenen Scriptfähigkeiten nicht draufgekommen.

Schönen Tag noch!


als Antwort auf: [#324331]
X